Mac OS X/windows下啟用Mod Rewrite和.htaccess

來源:互聯網
上載者:User

Apache的Mode Rewrite模組提供了一個基於Regex分析器的重寫引擎來即時重寫URL

Windows
在Windows下,我們一般使用的是Administrator帳號,所以啟用這兩項非常簡單:

在[Apache安裝目錄]/conf/httpd.conf中找到#LoadModule rewrite_module modules/mod_rewrite.so,去掉前面的注釋符號#。如果沒有這行,請添加。並確認apache安裝目錄下的modules檔案夾中是否有mod_rewrite.so這個檔案。這樣就啟用了Mod Rewrite功能。
在[Apache安裝目錄]/conf/httpd.conf中找到

 代碼如下 複製代碼
<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

把“AllowOverride None”改成“AllowOverride All”,這樣所有的檔案夾都支援.htaccess了,或者針對指定的檔案夾啟用.htaccess,可以在[Apache安裝目錄]/conf/httpd.conf中加入

 代碼如下 複製代碼
<Directory "D:/sites/example/">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

這種做法一般是和虛擬機器主機配置在一起的,所以大多數會把上述配置代碼寫入[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,加入

 代碼如下 複製代碼
<Directory "/Users/[使用者名稱]/Sites">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

這樣整個~/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/Wordpress
touch .htaccess
chmod 777 .htaccess建立檔案的許可權預設是644,通過ls -l .htaccess就可以看到,此時程式無法自動寫入.htaccess,這種情況比較安全,但是需要手動寫入。

退出後重啟Apache:sudo apachectl restart
完成上述設定之後,就可以使用Wordpress的固定連結功能了。需要注意的是,如果.htaccess是從Windows下直接複製過來,日誌中可能會出現</IfModule> without matching <IfModule> section的報錯。簡單的解決方案就是建立檔案,重新複製粘貼

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.