2017-06-14 38 views
0

首先,你不必說服NGINX是好的,我知道並希望將它用於所有Web項目。對於通常依賴htaccess的webapps,NGINX是否安全?

我前幾天被問到這個問題,並沒有一個確切的答案,因爲我沒有看太多的具體情況。

的問題,闡述了
舊的和新的網絡軟件,如Drupal和WordPress的,想出一些.htaccess -files,雖然有很多例子CONFIGS爲nginx的爲他們提供只是一個簡單的搜索。

  • 我該如何向客戶保證nginx分別對Drupal和Wordpress安全?
  • nginx如何配置那裏覆蓋這樣複雜的系統,並保持他們一樣安全的apache + htaccess?

這裏我不需要完整的答案,但是鏈接到試圖回答這個問題或類似問題的文章。

我想說服一些客戶轉向nginx以獲得巨大的性能提升,但他們需要更多的證據來證明我對通常依賴於htaccess的系統的安全性。

回答

4

什麼是.htaccess文件?

這是一個部分網絡服務器配置文件這是在每個(適用)的請求動態分析。它允許您通過在其中散佈配置片段來覆蓋每個目錄的Web服務器行爲的某些方面。

從根本上來說,它不會做任何一箇中央配置文件,它只是分散了該配置,並允許用戶覆蓋該配置,而無需直接訪問Web服務器。這在共享主機模型中已經證明非常有用並且非常流行,其中主機不希望提供對Web服務器配置的完全訪問和/或那將是不切實際的。

nginx從根本上只使用一個配置文件,但您可以通過包含其他配置文件(include指令)來添加該指令,最終可以模擬類似的系統。但是nginx的性能也是非常可笑的,因爲它不是而是在每個目錄的基礎上做動態配置包含;這對Apache中的每個請求都會造成巨大的性能損失。任何理智的Apache配置都會禁用.htaccess解析以避免性能損失,此時它與nginx之間沒有根本的區別。

更基本的是:什麼是網絡服務器?它是一個用特定的HTTP響應來響應HTTP請求的程序。你得到的迴應取決於你發送的請求。您可以將Web服務器配置爲根據大量變量向特定請求發送特定響應。 Apache和nginx同樣可以配置爲以相同的方式響應請求。只要你這樣做,行爲就沒有區別,從而「安全」。

+0

你知道一種方法來確保舊的.htaccess文件埋在天知道web應用程序的結構有多深,找到並正確「轉換」爲部分網站的nginx配置嗎?不需要自動化,只需要在計劃移動舊的Web應用程序時節省時間。 –

+0

否;一個'發現/路徑。htaccess'應該揭示這些文件,你可以從那裏手動轉換它們。 – deceze

+0

感謝您的快速回答,很確定我現在有足夠的信息來說服大部分客戶:) –

相關問題