2012-04-11 69 views
0

上週末,我在Windows上使用xampp在家建立了一個新站點。一切正常,我得到乾淨的網址(如http://mysite.com/page/about)。今天,我不得不把文件帶到我的辦公室,在那裏我用MAMP的Mac並沒有任何工作。我在/Applications/MAMP/conf/apache/httpd.conf文件中將AllowOverride更改爲All,並啓用LoadModule rewrite_module modules/mod_rewrite.so,但沒有運氣。 (當然,我重新啓動了MAMP) 但是沒有發生。我的所有webrowsers都沒有告訴我有關錯誤的信息。標題上剛剛獲得了'localhost:8888 /'。在OS X上使用htaccess清理MAMP上的URL使用htaccess的MAMP清理網址

我使用.htaccess文件這些行:

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteRule ^([A-Za-z0-9_-]+)(/)?$ index.php?page=$1 [QSA] 
    RewriteRule ^page/([A-Za-z0-9_-]+)(/)?$ index.php?page=page&uri=$1 
    RewriteRule ^work/([A-Za-z0-9_-]+)(/)?$ index.php?page=work&uri=$1 
</IfModule> 

我能做的還有什麼,使這個工作? 非常感謝。

+1

好吧,我只是發現它的工作。問題在於包含的文件。我使用絕對路徑(如include'/template/sidebar.php')到php包含無效的函數。我刪除了第一個'/',現在很好。我很蹩腳.. – 2012-04-11 10:12:26

回答

0

這讓我提供服務的文件about.php響應請求路徑/約:

RewriteRule ^([A-Za-z0-9_-]+)(/)?$ /$1.php [L] 

注意,在MAMP你必須把這個在.htaccess:

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteRule ^([A-Za-z0-9_-]+)(/)?$ /$1.php [L] 
</IfModule> 

在httpd.conf中放入同一個塊在MAMP上不適用於我。