菜鳥nginx源碼剖析 配置與部署篇(一) 手把手配置nginx “I love you”
?TCMalloc 對MYSQL 性能 優化的分析
菜鳥nginx源碼剖析系列文章解讀
Author:Echo Chen(陳斌)
Email:chenb19870707@gmail.com
Blog:Blog.csdn.net/chen19870707
Date:Nov 7th, 2014
還記得在前幾年的CSDN泄漏賬號事件中,統計發現程序員的賬號中含有love的最多,這里我也俗套下,在這篇文章中將講解如何 一步一步實用Nginx在一臺機器上搭建一個最簡單的顯示“I love you”的Web服務器,大家一起動手嘗試吧。
1.Nginx 程序包
目前nginx最新的開發版本為1.7.7:
- Linux:nginx-1.7.7.tar.gz
- Windows:nginx-1.7.7.zip?
穩定版本為1.6.2:
- Linux:nginx-1.6.2.tar.gz?
- Windows:nginx-1.6.2.zip?
大家可以根據自己的操作系統和喜好選擇程序包來實現,這里以nginx-1.7.7.tar.gz?在CentOs 6.4操作系統下為例。
2.Nginx下載解壓、安裝
下載和解壓,這里以nginx-1.7.7.tar.gz?在CentOs 6.4操作系統下為例:
1: wget http://nginx.org/download/nginx-1.7.7.tar.gz2: tar zxvf nginx-1.7.7.tar.gz
但是下載解壓完不要急著安裝,因為 Nginx 依賴很多軟件(gcc、g++、make、
libz-dev、
libbz2-dev、
libreadline-dev
),我們假設您的 Linux 環境是“純凈”的,所以下面我們就來安裝這些依賴包。請按照如下步驟安裝:?
1: yum install gcc -y
2: yum install g++ -y
3: yum install make -y
4: yum install zlib-dev* -y
5: yum install bzip2-dev* -y
6: yum install readline-devel -y
?
這是一些基本的軟件,另外還有 PCRE 要安裝。PCRE 是“Perl Compatible Regular Expressions”的縮寫,是一個正則表達式庫。下載、解壓并安裝 PCRE:
?
1: wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
?
2: tar -zxvf pcre-8.36.tar.gz
3: cd pcre-8.36.tar.gz
4: ./configure
5: make
6: make install
好了,這下可以安裝我們的nginx了
?
1: tar -zxvf nginx-1.7.7.tar.gz
2: cd nginx-1.7.7
3: ./configure
4: sudo make
5: sudo make install
?
3.Nginx 配置文件
按照上面的操作,Nginx 就已經安裝完了。因為我們使用的是默認的 configure,所以會安裝到
/usr/local/nginx
目錄。相應的配置文件是/usr/local/nginx/conf/nginx.conf
。我們打開配置文件,看到結構形如:?
1: ...
2: #工作模式與連接數上限
3: events
4: {
5: #參考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是Linux 2.6以上版本內核中的高性能網絡I/O模型,如果跑在FreeBSD上面,就用kqueue模型。
6: use epoll;
7: #單個進程最大連接數(最大連接數=連接數*進程數)
8: worker_connections 65535;
9: }
10:?
11: #設定http服務器,利用它的反向代理功能提供負載均衡支持
12: http
13: {
14:???? ...
15:???? #第一個虛擬服務器
16:??? server {
17:???? #偵聽192.168.8.x的80端口
18:???????? listen?????? 80;
19:???????? server_name? 192.168.8.x;
20:??????? }
21: }
22:?
其中events模塊表示工作模式與鏈接數上限,http模塊的作用為設定http服務器,server模塊表示虛擬服務器,這里只是簡要列出最簡單的配置,如果有需要對配置進行進一步了解,可以參考《
Nginx配置文件nginx.conf中文詳解》。
4.Nginx 一個簡單配置的編寫
建立一個/root/test_space目錄,用來存儲我們的測試頁面。再直接在 Nginx 的默認配置文件/usr/loca/nginx/conf/nginx.conf中修改,在http中增加一個server模塊,如下:
1: server {
2:???? listen????? 8011;
3:???? server_name localhost;
4:???? charset???? utf-8;
5:???? location / {
6:???????? alias?? /root/test_space/;
7:???? }
8: }
其中
listen
表示監聽的端口號,sever_name
則是web
服務器的名稱(可以是域名、host 或 IP 地址),charset
指定編碼字符集,這里的location
則通過alias
指定了web
服務的文件目錄。
5.Nginx啟動
?
1: /usr/local/nginx/sbin/nginx
2: s -ef | grep nginx
顯示如下則啟動成功:
6.測試
在/root/test_space下建立如下html文件:
?
1: <html>
2:??? <head></head>
3:??? <body>I love you!<body>
4: </html>
-
Echo Chen:Blog.csdn.net/chen19870707