apache2服務器mod_rewrite模塊 開啟方法[linux, ubuntu]


在UBUNTU系統中要啟用mod_rewrite的方法有兩種:

第一種: 在終端中執行 sudo a2enmod rewrite 指令后,即啟用了 Mod_rewrite 模塊, apache2服務器的模塊啟用方法就和虛擬主機的同IP多域名的啟用方法一樣, 所有的模塊都在/etc/mods-available/文件夾下, a2enmod rewrite 這個命令其實就是把該模塊名鏈接到/etc/apache2/mods-enabled/文件夾下, 如圖(命令: ls -la /etc/apache2/mods-enabled/)

打開這個模塊文件(/etc/apache2/mods-enabled/rewrite.load)看一下:

看到這里,相信大家都感覺很熟悉吧? 原來它也是定義一個路徑而已, 它真正的文件是這個:/usr/lib/apache2/modules/mod_rewrite.so, 你去看一下, 發現都是亂碼, 不用管它, 可以用就行了;

第二種: 也可以通過將 /etc/apache2/mods-available/rewrite.load 連接到 /etc/apache2/mods-enabled/rewrite.load 來打開 Mod_rewrite 模塊。其命令是: sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load 

一點小提示 事實上,當我在 Ubuntu 中采用上述做法並重啟了 Apache 服務后,仍然無法正常 rewrite 網址。

這里,還有一點需要注意的地方: sudo vim /etc/apache2/sites-enabled/000-default 將其中的: AllowOverride None 修改為: AllowOverride All 上面的 /etc/apache2/sites-enabled/000-default 實則為 /etc/apache2/sites-available/default 的連接。而 AllowwOverride None 則會完全忽略 .htaccess 文件,自然其中所定義的 rewrite 規則也就不能生效了。 最后,別忘了使用下列指令來重啟 Apache: 

$sudo /etc/init.d/apache2 restart

或者通過以下的命令:

#service apache2 restart  (推薦使用此種方法來重啟apache2)

source: http://hi.baidu.com/tonny_dxf/item/7701781b30cca15bf0090e50


免責聲明!

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



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