1. nginx-http-footer-filter到底是做什麼的?
說白了,就是在請求的頁面底部插入你要插入的程式碼。
2. 我們能用nginx-http-footer-filter來做什麼?
1、統一追加js程式碼用於統計(我是這麼想的)
2、底部追加回應這個請求的realsver(後端真實伺服器)資訊,便於系統管理員排查故障.
3、你管理著數量龐大的虛擬主機,在所有web後面追加你的廣告代碼,黑鏈什麼的(很無恥)
4、舉一反三吧,自己想想能用來做什麼吧.
淘寶用它來做什麼?
打開淘寶首頁,查看他原始碼,拖到最下面,內容如下:
<!--city: fuzhou--> <!--province: unknown--> <!--hostname: --> <!--hostname: home1.cn199-->
我們可以很清晰的看到,這邊有省和地區還有主機名,也就是淘寶真實伺服器的主機名稱,處理我這個請求的主機名為home1.cn199, city取到了fuzhou,provinece省份沒取到,估計是它geo的問題
或者隨便打開一個商品頁面, 查看源代碼,如下:
</html> <script type="text/javascript">tshop.initfoot({});</script>
可以看到他這邊給這頁追加了一個js代碼,淘寶開發這個模組的用意想必大家都明白了,集思廣益,或許大家還有更好的用處.
#3. 怎麼安裝nginx-http-footer-filter
3.1 下載位址:
https://github.com/alibaba/nginx-http-footer-filter/tree/1.2. 2
3.2 安裝nginx-footer模組
之前已經安裝過nginx,所以我選擇覆蓋nginx檔。
# cd /usr/local/src/ # wget https://codeload.github.com/alibaba/nginx-http-footer-filter/zip/1.2.2 # unzip 1.2.2 # http://nginx.org/download/nginx-1.4.1.tar.gz # tar -xzvf nginx-1.4.1.tar.gz # cd nginx-1.4.1 # ./configure --prefix=/usr/local/nginx-1.4.1 \ --with-http_stub_status_module --with-http_realip_module \ --add-module=../nginx-http-footer-filter-1.2.2 # make # mv /usr/local/nginx-1.4.1/sbin/nginx /usr/local/nginx-1.4.1/sbin/old_nginx # mv objs/nginx /usr/local/nginx-1.4.1/sbin/ # /usr/local/nginx-1.4.1/sbin/nginx -s stop # /usr/local/nginx-1.4.1/sbin/nginx
3.3 驗證模組是否安裝成功
# /usr/local/nginx-1.4.1/sbin/nginx -v nginx version: nginx/1.4.1 built by gcc 4.4.7 20120313 (red hat 4.4.7-3) (gcc) tls sni support enabled configure arguments: --prefix=/usr/local/nginx-1.4.1 --with-http_stub_status_module --with-http_realip_module --add-module=../nginx-http-footer-filter-1.2.2
4. 怎麼使用nginx-http-footer-filter模組
4.1 設定location
在location中使用footer "你的內容" 即可.看如下設定
server { listen 173.255.219.122:80; server_name test.ttlsa.com; access_log /data/logs/nginx/test.ttlsa.com.access.log main; index index.html index.php index.html; root /data/site/test.ttlsa.com; location / { footer "<!-- $date_gmt -->"; index index.html; } location =/html/2252.css { footer_types text/css; footer "/* host: $server_name - $date_local */"; }
4.2 測試nginx-footer效果
# cat 2252.shtml <html> <head> <title>test</title> </head> <body> this is webpage </body> </html>
造訪網站test.ttlsa.com/html/2252.shtml
#如圖,我們可以看到文件最底部加上了,怎麼變成了時間撮了,因為我這邊是ssi的語法,如果你不知道什麼是ssi,那麼請參考文章什麼是ssi.
[warning]他僅僅是在文件的最後一行追加,而不是
4.3 再來測試css檔案
# cat 2242.css # this is css file
如下是存取結果:
# this is css file /* host: test.ttlsa.com - 1376064324 */
看圖:
#5. 我能寫多個footer指令嗎?
不行,以下我寫了兩個footer
location / { footer "12312321321"; footer "<!-- $date_gmt -->"; index index.html; }
如下測試,提示footer指令重複了
# /usr/local/nginx-1.4.1/sbin/nginx -t nginx: [emerg] "footer" directive is duplicate in /usr/local/nginx-1.4.1/conf/vhost/test.ttlsa.com.conf:13 nginx: configuration file /usr/local/nginx-1.4.1/conf/nginx.conf test failed
6. 只能用ssi變數嗎?
當然不是,隨便你寫,可以是ssi指令,也可以是nginx變量,也可以是任何無意義的字符串
如下:
footer "12312321321"; footer "<!--12312321321-->"; footer "<!--$remote_addr-->";
比如我想知道這個頁面是哪台web伺服器處理的,那麼我在底部插入主機名稱即可.這樣,有500錯誤,我便可以馬上定位到具體的伺服器了
footer "<!--$hostname-->";
返回結果如下:
7. 伺服器回傳500,404,403等錯誤, 是否還會追加內容到底部
會,如果不追加,就無法通過回傳的頁面得知哪台web故障,這明顯就不符合作者的初衷了
配置如下:
location / { return 500; footer "<!--$hostname-->"; }
結果如下:
##8. 模組指令說明:
footer模組非常簡單,就只有兩個指令,具體說明如下footer字串
預設值:
設定段: http, server, location
這個定義了要將什麼內容追加到檔案內容的底部
footer_types mime類型
預設值: footer_types: text/html
設定段: http, server, location
以上是Nginx伺服器的nginx-http-footer-filter模組怎麼配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

NGINXUnit支持多種編程語言,通過模塊化設計實現。 1.加載語言模塊:根據配置文件加載相應模塊。 2.應用啟動:調用語言運行時執行應用代碼。 3.請求處理:將請求轉發給應用實例。 4.響應返回:將處理後的響應返回給客戶端。

NGINX和Apache各有優劣,適合不同場景。 1.NGINX適合高並發和低資源消耗場景。 2.Apache適合需要復雜配置和豐富模塊的場景。通過比較它們的核心特性、性能差異和最佳實踐,可以幫助你選擇最適合需求的服務器軟件。

確認 Nginx 是否啟動的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 檢查端口 80 是否開放;3. 查看系統日誌中 Nginx 啟動消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

要關閉 Nginx 服務,請按以下步驟操作:確定安裝類型:Red Hat/CentOS(systemctl status nginx)或 Debian/Ubuntu(service nginx status)停止服務:Red Hat/CentOS(systemctl stop nginx)或 Debian/Ubuntu(service nginx stop)禁用自動啟動(可選):Red Hat/CentOS(systemctl disable nginx)或 Debian/Ubuntu(syst

如何在 Windows 中配置 Nginx?安裝 Nginx 並創建虛擬主機配置。修改主配置文件並包含虛擬主機配置。啟動或重新加載 Nginx。測試配置並查看網站。選擇性啟用 SSL 並配置 SSL 證書。選擇性設置防火牆允許 80 和 443 端口流量。

服務器無權訪問所請求的資源,導致 nginx 403 錯誤。解決方法包括:檢查文件權限。檢查 .htaccess 配置。檢查 nginx 配置。配置 SELinux 權限。檢查防火牆規則。排除其他原因,如瀏覽器問題、服務器故障或其他可能的錯誤。

在 Linux 中啟動 Nginx 的步驟:檢查 Nginx 是否已安裝。使用 systemctl start nginx 啟動 Nginx 服務。使用 systemctl enable nginx 啟用在系統啟動時自動啟動 Nginx。使用 systemctl status nginx 驗證啟動是否成功。在 Web 瀏覽器中訪問 http://localhost 查看默認歡迎頁面。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Atom編輯器mac版下載
最受歡迎的的開源編輯器