Ubuntu

使用沒有 .htaccess 文件的 apache 重寫模組

  • October 13, 2010

我剛剛完成了關於如何將 mod_rewrite 與 apache 一起使用的本教程(以及其他一些教程):http ://www.workingwith.me.uk/articles/scripting/mod_rewrite 。但是,他們都專注於使用 .htaccess 文件來重寫 URL

您如何從 apache.conf / httpd.conf 文件或僅從“/etc/apache2/sites-enabled”目錄本身中使用此重寫引擎模組…?有關如何執行此操作所需的任何附加語法的範例將很有用。

我對我的系統具有 root 訪問權限,因此我希望盡可能避免使用 .htaccess 文件。我的系統是 Ubuntu-Server 10.04

語法是相同的,但您必須確保根據您的要求將規則放在 httpd.conf 文件(或 vhosts.conf 或適合您的發行版的任何內容)中的正確位置。

因此,如果您的重寫規則特定於特定的虛擬主機,那麼重寫規則將進入該虛擬主機的容器中。如果規則是全域的(例如影響所有站點),那麼您可以將它放在 httpd.conf 文件中的任何位置。

關於mod_rewritecontext的文件應該是對此有用的參考。如果您會做很多這樣的事情,那麼一本 Apache 書是值得投資的!

出於興趣,您為什麼要避免為此使用 .htaccess 文件?.htaccess 文件中的更改是即時的,而 httpd.conf 等中的更改需要重新啟動 apache 才能生效。

引用自:https://serverfault.com/questions/190494