Centos下安裝nginx rpm包 www.169it.com
1 在nginx官方網站下載一個rpm包,下載地址是:http://nginx.org/en/download.html
wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
2 安裝這個rpm包
rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
安裝過程中會出現錯誤提示:
warning: nginx-release-centos-6-0.el6.ngx.noarch.rpm: Header V4 RSA/SHA1 Signature, key ID 7bd9bf62: NOKEY
忽略即可
3 開始正式安裝nginx
yum install nginx
會顯示一大堆信息:Is this ok [y/N]:
輸入y,屏幕滾了一會之后就安裝完畢,最后提示“Complete!”就是安完了。
4 nginx的幾個默認目錄
輸入命令: whereis nginx
nginx: /usr/sbin/nginx /etc/nginx /usr/share/nginx
1) 配置所在目錄:/etc/nginx/
2) PID目錄:/var/run/nginx.pid
3) 錯誤日志:/var/log/nginx/error.log
4) 訪問日志:/var/log/nginx/access.log
5) 默認站點目錄:/usr/share/nginx/html
5 常用命令
1) 啟動nginx:nginx
2) 重啟nginx:killall -HUP nginx
3) 測試nginx配置:nginx -t
6 Nginx無法站外訪問?
剛安裝好nginx一個常見的問題是無法站外訪問,本機wget、telnet都正常。而服務器之外,不管是局域網的其它主機還是互聯網的主機都無法訪問站點。如果
用telnet的話,提示:
正在連接到192.168.0.xxx...不能打開到主機的連接, 在端口 80: 連接失敗
如果用wget命令的話,提示:
Connecting to 192.168.0.100:80... failed: No route to host.
如果是以上的故障現象,很可能是被CentOS的防火牆把80端口攔住了,嘗試執行以下命令,打開80端口:
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
然后用:
/etc/init.d/iptables status
查看當前的防火牆規則,如果發現有這樣一條:
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
就說明防火牆規則已經添加成功了,再在站外訪問就正常了。
一般Linux下nginx通過源碼安裝步驟參考
一般我們都需要先裝pcre, zlib,前者為了重寫rewrite,后者為了gzip壓縮。
1.選定源碼目錄
可以是任何目錄,本文選定的是/usr/local/src
cd /usr/local/src
2.安裝PCRE庫
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下載最新的 PCRE 源碼包,使用下面命令下載編譯和安裝 PCRE 包:
cd /usr/local/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.21.tar.gz
tar -zxvf pcre-8.21.tar.gz
cd pcre-8.21
./configure
make
make install
3.安裝zlib庫
http://zlib.net/zlib-1.2.8.tar.gz 下載最新的 zlib 源碼包,使用下面命令下載編譯和安裝 zlib包:
cd /usr/local/src
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install
4.安裝ssl(某些vps默認沒裝ssl)
cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar -zxvf openssl-1.0.1c.tar.gz
5.安裝nginx
Nginx 一般有兩個版本,分別是穩定版和開發版,您可以根據您的目的來選擇這兩個版本的其中一個,下面是把 Nginx 安裝到 /usr/local/nginx 目錄下的詳細步驟:
cd /usr/local/src
wget http://nginx.org/download/nginx-1.4.2.tar.gz
tar -zxvf nginx-1.4.2.tar.gz
cd nginx-1.4.2
./configure --sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid \
--with-http_ssl_module \
--with-pcre=/usr/local/src/pcre-8.21 \
--with-zlib=/usr/local/src/zlib-1.2.8 \
--with-openssl=/usr/local/src/openssl-1.0.1c
make
make install
--with-pcre=/usr/src/pcre-8.21 指的是pcre-8.21 的源碼路徑。
--with-zlib=/usr/src/zlib-1.2.7 指的是zlib-1.2.7 的源碼路徑。
安裝成功后 /usr/local/nginx 目錄下如下:
fastcgi.conf koi-win nginx.conf.default
fastcgi.conf.default logs scgi_params
fastcgi_params mime.types scgi_params.default
fastcgi_params.default mime.types.default uwsgi_params
html nginx uwsgi_params.default
koi-utf nginx.conf win-utf
6.啟動
確保系統的 80 端口沒被其他程序占用,運行/usr/local/nginx/nginx 命令來啟動 Nginx,
netstat -ano|grep 80
如果查不到結果后執行,有結果則忽略此步驟(ubuntu下必須用sudo啟動,不然只能在前台運行)
sudo /usr/local/nginx/nginx
打開瀏覽器訪問此機器的 IP,如果瀏覽器出現 Welcome to nginx! 則表示 Nginx 已經安裝並運行成功。