本教程是親測之后才寫出來的,分享給不會編譯云鎖nginx自編譯模塊的用戶。
首先在操作前,請確認已經配置好寶塔面板,并采用編譯方法配置的nginx環境!(不是極速安裝,是編譯安裝)
并妥善備份Nginx文件,以及確定本教程不適用于非寶塔用戶以及apache用戶。
其次,本教程只要按照一步一步來,傻瓜都能編譯好。官方教程小白看一眼懵逼了,本教程沒那么復雜。
配置編譯環境,寶塔如果編譯好nginx是默認配置好環境的,可以忽略這個配置環境…
yum install -y gcc gcc-c++ pcre-devel openssl openssl-devel
你可以使用SSH工具以ROOT權限登陸之后下載備份nginx,也可以直接使用命令備份nginx
查看nginx位置
ps -elf | grep nginx
進入寶塔nginx目錄
cd /www/server/nginx/sbin/
備份寶塔nginx
cp nginx nginx.bak
進入root目錄
cd /root
下載云鎖防護模塊壓縮包
wget https://codeload.github.com/yunsuo-open/nginx-plugin/zip/master -O nginx-plugin-master.zip
解壓云鎖防護模塊壓縮包
unzip nginx-plugin-master.zip
查看寶塔編譯好的nginx加載模塊,在重新編譯加載云鎖防護模塊的時候仍需加載這些模塊
nginx -V
注意這個命令是大寫的V,如果小寫v是不會顯示模塊的

將./configure arguents:之后的內容復制到記事本備用,比如我的是:
--user=www --group=www --prefix=/www/server/nginx --with-openssl=/www/server/nginx/src/openssl --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --add-module=/www/server/nginx/src/nginx-sticky-module --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-http_concat_module --with-ld-opt=-Wl,-E --with-jemalloc --without-http_upstream_session_sticky_module --with-pcre=pcre-8.40
(我的僅供參考,實際以自己的為準)
進入nginx源碼目錄,對nginx進行重新編譯,操作之前請確認自己的nginx是編譯模式安裝的,而不是寶塔面板的極速安裝。
cd /www/server/nginx/src
編譯內容
./configure 上一步記事本中的備用內容 --add-module=/root/nginx-plugin-master
./configure和記事本復制的內容之間有個空格,后面的–add-module前面也有個空格,比如我的編譯命令為:
./configure --user=www --group=www --prefix=/www/server/nginx --with-openssl=/www/server/nginx/src/openssl --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --add-module=/www/server/nginx/src/nginx-sticky-module --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-http_concat_module --with-ld-opt=-Wl,-E --with-jemalloc --without-http_upstream_session_sticky_module --with-pcre=pcre-8.40 --add-module=/root/nginx-plugin-master
(我的僅供參考,實際以自己的為準)
等待命令結束,輸入編譯命令
make
完成后將系統中原有的nginx用重新編譯生成的nginx文件替換
停止nginx
service nginx stop
刪除原來的nginx,操作之前請確認自己的nginx已經備份
rm -rf /www/server/nginx/sbin/nginx
復制新編譯的nginx
cp /www/server/nginx/src/objs/nginx /www/server/nginx/sbin/
啟動nginx
service nginx start
通過PC端登陸云鎖,PC端刷新后可以看到已識別nginx插件(由灰色變為綠色)

輸入你的網址后面加上/?order%20by,測試云鎖。

備注:如果你實在搞不定,可以聯系小高幫忙編譯。