2015-11-12 48 views
2

嗨的工作我有一個友好的URL網站.htaccess的URL重定向沒有GoDaddy的

Options +FollowSymLinks -Multiviews 

<IfModule mod_rewrite.c>   
    RewriteEngine on 
    RewriteBase/

    rewritecond %{SCRIPT_FILENAME} !-d 
    rewritecond %{SCRIPT_FILENAME} !-f 

    rewriterule ^(.*)$ $1.php [L] 

    rewriterule ^noticia/([a-zA-Z0-9_-]+)$ noticia.php?title=$1 [L]   
</IfModule> 

以下重定向如果我去www.mysite.com/noticias或任何其他URL一樣,一切都OK

但如果我嘗試去www.mysite.com/noticia/​​this-is-a-parameter

當我訪問一個鏈接我不喜歡它<a href="noticia/this-is-a-parameter">

我得到內部服務器錯誤消息和白色屏幕

在本地主機,它正在完美,但無法找到服務器的解決方案。

任何幫助,將不勝感激

+0

添加你的apache的error.log你的問題 –

+0

GoDaddy的共享主機不有權訪問該日誌文件 – DannyG

回答

1

檢查.php文件的存在增加PHP擴展前,重新排序規則:

Options +FollowSymLinks -Multiviews 
RewriteEngine on 
RewriteBase/

RewriteRule ^noticia/([\w-]+)/?$ noticia.php?title=$1 [L,QSA,NC] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.+?)/?$ $1.php [L] 
+0

謝謝!它工作,所以,如果我有其他文件像'產品/([\ w - ] +)/?$ ...'我必須在每個規則前添加'RewriteBase /'嗎?因爲在那些我的樣式表或圖片加載不正確 – DannyG

+0

或者如果我有例如相同的URL與一個額外的參數?可以說'^ noticia/page /([\ w - ] +)/?$'? [見本示例](http://pacificodesign.net/noticias/tag/casas) – DannyG

+1

這是由於使用相對路徑。您可以在頁面的HTML頁面的''部分添加以下內容:'' – anubhava