1. 程式人生 > >Nginx部署訪問控制(Web)

Nginx部署訪問控制(Web)

gin .tar.gz src nginx配置文件 htpasswd use 創建服務 tar 修改配置文件

一、Nginx

1.優點

1)多並發數:30000 - 50000

2)網易、騰訊等

3)新聞、論壇等

4)靜態網頁

5)輕量級

6)nginx+tomcat:負載均衡

Apache:模塊化設計

二、Nginx

源代碼

1.安裝軟件包

(1)刪除本地與yum源 rm -rf /etc/yum.repos.d/*

技術分享

(2) 配置本地yum源 vim /etc/yum.repos.d/local.repo

技術分享

(3)安裝nginx依賴包 yum -y install pcre-devel zlib-devel

技術分享

(4)創建服務運行用戶 useradd -M -s /sbin/nologin nginx

技術分享

(5)將源碼包通過xsehll或者lrzsz包命令上傳到服務器(這裏通過lrzsz)安裝完直接通過遠程連接軟件(xshell)

拖拽到服務器或者用rz命令自主選擇上傳

技術分享

(6)解壓nginx壓縮包到/usr/src/目錄下

tar -zxvf nginx-1.6.0.tar.gz -C /usr/src/

技術分享

(7)進入解壓目錄/usr/src/nginx-1.6.0/下 cd /usr/src/nginx-1.6.0/

技術分享

(8)編譯nginx功能模塊 ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module

技術分享

詳解:

--user:指定運行用戶

--group:指定運行組

--with-http_stub_status_module:啟用狀態統計模塊支持

(9)安裝nginx網站服務 make && make install

技術分享

2.修改配置文件

//修改配置文件vim /usr/local/nginx/conf/nginx.conf

技術分享

3.啟動nginx服務

(1)將命令做軟鏈接或加入到PATH環境變量,方便命令執行(這裏指方法一)

方法一:ln -s /usr/local/nginx/sbin/* /usr/local/sbin/

技術分享

方法二:echo "PATH=$PATH:/usr/local/nginx/sbin/" >>/etc/profile && source /etc/profile

(2)編輯nginx啟動腳本 vim /etc/init.d/nginx

技術分享

(3)給nginx啟動腳本執行權限 chmod +x /etc/init.d/nginx

技術分享

(4)啟動nginx服務 /etc/init.d/nginx start

技術分享

(5)設置nginx服務在35級別開機自啟 chkconfig --level 35 nginx on

技術分享

(6)檢查配置文件是否有誤 nginx -t

技術分享

4.增加狀態統計支持(前提是在編譯時需要添加所需要的模塊功能才能在配置文件裏增加)

(1)編輯nginx配置文件 vim /usr/local/nginx/conf/nginx.conf

技術分享

(2)重啟nginx服務 /etc/init.d/nginx restart

技術分享

(3)關閉nginx服務器的防火墻 /etc/init.d/iptables stop

技術分享

(4)測試網址:http://192.168.1.10/status(切記測試前一定要關閉服務器的防火墻)

技術分享

本文主要部署nginx、監控、優化

三、訪問控制(切記訪問控制是在以上搭建好nginx基礎上完成)

1.生成密碼認證文件(htpasswd) yum –y install httpd-tools

技術分享

2.創建可密碼認證的賬戶 htpasswd -c /usr/local/nginx/conf/.hehe hehe

技術分享

3.將/usr/local/nginx/conf/.hehe文件的所有者更改為nginx

chown nginx /usr/local/nginx/conf/.hehe

技術分享

4.給 /usr/local/nginx/conf/.hehe文件所有者讀取權限其他無權限

技術分享

5. 修改配置文件,添加認證選項

(1)編輯nginx配置文件 vim /usr/local/nginx/conf/nginx.conf

技術分享

(2)重啟服務 /etc/init.d/nginx restart

技術分享

(3)測試nginx訪問控制

技術分享

技術分享

//以上這實驗是對nginx做訪問控制的(可根據實際情況作調整)

Nginx部署訪問控制(Web)