nginx安裝擴展 sub_filter&http_ssl_module


nginx之所以輕,因為默認沒有安裝各種各樣的擴展;

nginx安裝擴展插件:

下面列出兩個可能會用到的插件

一、sub_filter內容過濾器,這個在nginx做http轉發的時候會很常用

1.下載插件>git clone git://github.com/yaoweibin/ngx_http_substitutions_filter_module.git

 

2.安裝插件

**如果你還沒有安裝nginx的,配置的時候./configure .....  加上 --add-module=/tmp/ngx_http_substitutions_filter_module 這段話進行配置;

 

**如果你已經安裝了nginx的,找到你的nginx源安裝目錄如

>cd nginx-1.11.0  //進入nginx安裝目錄

>./configure --prefix=/usr/local/nginx  --add-module=/tmp/cyq/ngx_http_substitutions_filter_module //prefix指定你安裝好的nginx目錄,add-module指定你下載的sub_filter插件目錄

>make  //這邊注意了,不要make install,只需要make編譯一下,然后在當前目錄的./objs/下面就會更新nginx啟動文件

 

>mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old   //先pkill -9 nginx 停止nginx服務

>cp ./objs/nginx /usr/local/nginx/sbin/nginx   //把編譯生成的文件放到你的nginx啟動目錄里面

>/usr/local/nginx/sbin/nginx   //啟動nginx就行了

 

3.打開自己的網站,內容是 this is php in 192.168.199.167

 

在對應的nginx.conf 文件中,添加需要進行過濾的數據內容

vi nginx.conf

 將this is 改為 my name is

 

 是不是很強大呢?畢竟nginx是屬於第七層應用層領域的,所以轉發的內容可以隨意修改;這個插件可以用於建設小偷網站,就是域名是自己的,但是你轉發到其他網站的時候,里面很多數據都暴露了網站內容屬於其他人的

這個時候你就可以使用sub_filter來做內容過濾了!哈哈哈哈!

 

 

 

二、nginx無法轉發到https網站

會報以下錯誤:

nginx: [emerg] https protocol requires SSL support in xx/xxx/xx/

這個很簡單,不過網上說什么缺少ssl模塊啦,還要安裝證書啦,巴拉巴拉一大堆。(這些只是針對網站需要證書驗證訪問才需要的)

一般的訪問https失敗,只是因為nginx沒有安裝兩個模塊http_ssl_module和http_stub_status_module 

解決步驟:

1.進入nginx安裝目錄

>cd /xx/nginx-1.11.0

>./configure --with-http_stub_status_module --with-http_ssl_module

>make

>cp ./objs/nginx /usr/local/nginx/sbin/nginx   //先停止nginx,然后吧nginx覆蓋掉

>/usr/local/nginx/sbin/nginx //再次啟動nginx就可以了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM