星期五, 9月 13, 2013

apache 設定alias網站rewrite 出現 404 問題

apache中,alias的資料夾設定rewrite會找不到檔案
太怪了,路徑都寫出來了,卻說沒這檔

印象中,過去設定alias沒遇過這問題
但現在怎麼設都用不出來~
查了一下,可以在.htaccess動手腳

  • httpd.conf
    alias /fish /home/fish/public
        <directory /home/fish/public>
            Options FollowSymLinks
            AllowOverride All
            Order Deny,Allow
            Allow from all
       </directory>
    
  • .htaccess
    path: /home/fish/public/ap1
    <ifmodule mod_rewrite.c>
        RewriteBase /fish/ap1/
        RewriteEngine on
        RewriteRule  ^$ public/    [L]
        RewriteRule  (.*) public/$1 [L]
        #RewriteRule ^(.*)$ /fish/ap1/public [QSA,L] #另一寫法,不需RewriteBase
    </ifmodule>
    

這樣可以work,但麻煩處是每個.htacess都得加
再看看有沒有其他寫法