Nginx部署及综合应用
介紹
Nginx是一款輕量級的HTTP服務(wù)器軟件,由俄羅斯的Igor Sysoev開發(fā)。它能夠支持高達(dá)50000個(gè)并發(fā)連接數(shù)的響應(yīng),擁有強(qiáng)大的靜態(tài)資源處理能力,運(yùn)行穩(wěn)定,并且系統(tǒng)資源消耗非常低,現(xiàn)已逐漸被越來越多的用戶認(rèn)可,目前很多大型網(wǎng)站都應(yīng)用Nginx服務(wù)器作為后端網(wǎng)站程序的反向代理及負(fù)載均衡器,來提升整個(gè)站點(diǎn)的負(fù)載并發(fā)能力。
系統(tǒng)環(huán)境:
- rhel 6.5 操作系統(tǒng)
- 服務(wù)器IP地址:192.168.100.5
- Nginx-1.6.0.tar.gz 百度下載 密碼:gz86
實(shí)現(xiàn)目標(biāo):
開始部署
一. 安裝Nginx服務(wù)器
1.安裝依賴包
yum -y install pcre-devel zlib-devel gcc gcc-c++ make2.新建nginx管理用戶
useradd -M -s /sbin/nologin nginx3.解壓
tar xzvf nginx-1.6.0.tar.gz -C /opt4.配置
cd /opt/nginx-1.6.0/./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module #開啟stub_status狀態(tài)統(tǒng)計(jì)模塊
5.編譯及安裝
make && make install6.建立nginx鏈接,便于系統(tǒng)管理
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/########### nginx管理命令 ###########
nginx -t #nginx配置文件檢查
nginx #啟動
killall -1 nginx #重啟nginx
killall -3 nginx #停止nginx
######################################
7.生成nginx管理腳本
vi /etc/init.d/nginx#!/bin/bash
#chkconfig: - 99 20
#description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
8.nginx賦予執(zhí)行權(quán)限
chmod +x /etc/init.d/nginx9.nginx加入系統(tǒng)服務(wù)管理
chkconfig --add nginx10.啟動nginx
service nginx start11.測試
二. 啟用Nginx的狀態(tài)統(tǒng)計(jì)
1.進(jìn)入nginx的conf目錄
cd /usr/local/nginx/conf2.備份nginx.conf配置文件
mv nginx.conf nginx.conf.bak3.過濾掉注釋文件至nginx.conf文件
grep -v "#" nginx.conf.bak > nginx.conf4.編輯nginx.conf配置文件
vim nginx.confserver {
listen 80;
server_name localhost;
charset utf-8;
location / {
root html;
index index.html index.htm;
}
location ~ /status { #訪問位置為/status
stub_status on; #打開狀態(tài)統(tǒng)計(jì)功能
access_log off; #關(guān)閉此位置的日志記錄
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {root html;
}
}
}
5.檢測配置文件是否配置正確
nginx -t6.重新啟動nginx
service nginx restart7.測試
三. 創(chuàng)建多虛擬主機(jī)
1.編輯nginx主配置文件
vim /usr/local/nginx/conf/nginx.conf2.添加以下兩個(gè)虛擬主機(jī)
server {
listen 80;
server_name www.web1.com; #域名
location / {
root /var/www/web1; #站點(diǎn)目錄
index index.html index.php;
}
}
server {
listen 80;
server_name www.web2.com; #域名
location / {
root /var/www/web2; #站點(diǎn)目錄
index index.html index.php;
}
}
3.檢測配置文件是否配置正確
nginx -t4.重新啟動nginx
service nginx restart5.測試
訪問www.web1.com 站點(diǎn):
訪問www.web2.com 站點(diǎn):
四. 實(shí)現(xiàn)用戶身份驗(yàn)證訪問
1.使用htpasswd生成用戶認(rèn)證文件,需要輸入兩次密碼確認(rèn)
htpasswd -c /usr/local/nginx/passwd.db zhangsan2.修改密碼文件的權(quán)限
chmod 400 /usr/local/nginx/passwd.db3.修改密碼文件所有者
chown nginx /usr/local/nginx/passwd.db4.編輯nginx主配置文件
vim /usr/local/nginx/conf/nginx.conflocation / {
auth_basic "secret"; #添加認(rèn)證配置
auth_basic_user_file /usr/local/nginx/passwd.db; #指定密碼文件路徑
root html;
index index.html index.htm;
}
5.檢測配置文件是否配置正確
nginx -t6.重新啟動nginx
service nginx restart7.測試
五. 用戶授權(quán)訪問控制
1.編輯nginx主配置文件
vim /usr/local/nginx/conf/nginx.conflocation / {
deny 192.168.100.30; #禁止192.168.100.30訪問
allow all; #允許其他主機(jī)訪問
root html;
index index.html index.htm;
}
2.檢測配置文件是否配置正確
nginx -t3.重新啟動nginx
service nginx restart4.測試
未禁止訪問時(shí),該客戶機(jī)可以正常訪問瀏覽
添加禁止訪問設(shè)置后,該客戶機(jī)已經(jīng)不能夠訪問瀏覽了
轉(zhuǎn)載于:https://blog.51cto.com/10316297/2130972
總結(jié)
以上是生活随笔為你收集整理的Nginx部署及综合应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于Spring Boot的“课程设计”
- 下一篇: LNMP Nginx 499 问题 第三