Apache的Mode

Apache的Mode

在Windows下 , 我們一般使用的是Administrator賬號,所以啟用這兩項非常簡單:
在[Apache安裝目錄]/conf/httpd.conf中找到
#LoadModule rewrite_module modules/mod_rewrite.so
,去掉前面的注釋符號# 。如果沒有這行 , 請添加 。并確認apache安裝目錄下的modules文件夾中是否有
mod_rewrite.so
這個文件 。這樣就啟用了
Mod Rewrite
功能 。

[Apache安裝目錄]/conf/httpd.conf
中找到
Options FollowSymLinksAllowOverride NoneOrder deny,allowDeny from all
【Apache的Mode】把“
AllowOverride None
”改成“

AllowOverride All
”,這樣所有的文件夾都支持.htaccess了,或者針對指定的文件夾啟用.htaccess , 可以在
[Apache安裝目錄]/conf/httpd.conf
中加入
Options Indexes FollowSymLinksAllowOverride AllOrder allow,denyAllow from all這種做法一般是和虛擬主機配置在一起的 , 所以大多數會把上述配置代碼寫入
[Apache安裝目錄]/conf/extra/httpd-vhost.conf
中,這樣比較清晰易于管理 。
重啟Apache后,就ok了 。
完成上訴步驟后,在Wordpress的固定鏈接中使用除默認外的鏈接設置,Wordpress會直接在其安裝目錄中生成對應的.htaccess,這樣就可以使用設置的鏈接形式了 。
Mac OS X

在Mac OS X中一般不使用
root
賬號 , 而是通過
sudo
來獲得
root
相關權限 。
一般情況下,我們把網站文件放在個人目錄下 , 比如
~/Sites
,這樣就涉及到Mac OS的權限管理,相對于Windows來說復雜不少 。
在終端運行sudo vi /etc/apache2/httpd.conf,找到

#LoadModule rewrite_module modules/mod_rewrite.so
,去掉前面的注釋符號# 。
運行
sudo vi /etc/apache2/extra/httpd-vhost.conf
,加入
Options Indexes FollowSymLinks MultiViewsAllowOverride AllOrder allow,denyAllow from all這樣整個
~/Sites
都可以支持
.htaccess

運行
sudo vi /Private/etc/apache2/users/[用戶名].conf
,把其中的
AllowOverride None
改成
AllowOverride All
。需要注意的是,以前的Mac OS X版本,路徑可能是
/private/etc/httpd/users/[用戶名].conf
在需要的目錄新建.htaccess,并修改其權限為777,此處依舊以使用Wordpress的固定鏈接為例 。
cd ~/Sites/Wordpresstouch .htaccesschmod 777 .htaccess新建文件的權限默認是
644
,通過
ls -l .htaccess
就可以看到,此時程序無法自動寫入.htaccess , 這種情況比較安全,但是需要手動寫入 。
退出后重啟Apache:
sudo apachectl restart
完成上述設置之后,就可以使用Wordpress的固定鏈接功能了 。需要注意的是,如果.htaccess是從Windows下直接復制過來 , 日志中可能會出現
without matching section
的報錯 。簡單的解決方案就是新建文件,重新復制粘貼 。

經驗總結擴展閱讀