2010-01-27 66 views
0

我正在一個問答網站上工作,並感謝亞歷克斯,我得到了我想要在網站上的固定鏈接(PHP Permalinks.. how to change?)。Htaccess PHP重定向。無法這樣做.. 404找不到錯誤

這裏是格式..

原文: domainname.com/cat/how-are-you-|162

新的永久鏈接: domainname.com/cat/how -are-you- | 162.html

新的固定鏈接將不起作用,即它不加載頁面並顯示404未找到錯誤。我對重寫的知識非常基礎,我嘗試了一些功能,但令我沮喪的是,他們根本不工作。

如何使用htaccess文件將原始重定向到新的永久鏈接?

謝謝。

EDIT1: @Ignacio - 目前,我還沒有實現它的服務器上,因爲我不想失去流量,但我能做到這一點再次今夜,將與結果更新。

@Pekka - 這裏是.htaccess文件http://pastebin.com/m23c7d2b6

+0

你的日誌聲明Web服務器試圖訪問什麼文件? – 2010-01-27 12:49:02

+0

你可以顯示你正在使用的htaccess文件嗎? – 2010-01-27 12:49:41

+0

更新我的問題並添加了htaccess文件..謝謝! – regguy 2010-01-27 13:03:01

回答

0

你想要做的兩件事情:

  1. 永久老永久鏈接重定向到新的永久鏈接和
  2. 結交新固定鏈接工作。

重定向舊的永久鏈接,添加如下內容:

 
RewriteCond %{REQUEST_FILENAME} !.*\.html$ 
RewriteRule ^(.+/.+)$ $1.html [L,R=301] 

要獲得新的固定鏈接工作,改變這一行:

 
RewriteRule ^([^/.]+)/([^/.]*)?$ view.php?title=$1&id=$2&%{QUERY_STRING} 

這樣:

 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/.]+)/([^/.]*)\.html?$ view.php?title=$1&id=$2&%{QUERY_STRING} 
+0

謝謝傑里米,我確實做出了改變,但他們沒有工作,主要是因爲。在覈心文件中分配了html擴展名,並且在Alex(該社區的成員)的幫助下完成了index.tpl文件。現在,沒有特別原因,CSS從網站上被剝離。我將不勝感激,如果你可以看看這個線程http://stackoverflow.com/questions/2127913/php-permalinks-how-to-change和網站是http://studentask.com – regguy 2010-01-27 18:02:16