2012-02-03 171 views
0

我有這個網址:http://www.website.nl/pagina/4/wie-ben-ik.htmlHtaccess刪除部分URL

「pagina」是一個真正的php文檔。 「4」是網頁的ID,ID從數據庫中獲得結果。

我可以使用htaccess將此URL更改爲http://www.website.nl/wie-ben-ik嗎?

謝謝!

+1

什麼沒有這方面的工作http://httpd.apache.org/docs/2.0/ mod/mod_rewrite.html#rewriterule? – Vyktor 2012-02-03 17:14:10

+0

您是否曾嘗試在您的.htaccess文件中寫入任何內容? – summea 2012-02-03 17:16:21

+1

這類問題[已被覆蓋很多](http://stackoverflow.com/search?q=php+mod_rewrite+id+to+page)。它只需要一點谷歌的努力就可以找到,因爲問題標題通常也是無關緊要的。使用通用文件不存在捕獲所有RewriteRule並使用包裝腳本在PHP中執行pagename - > id映射。 – mario 2012-02-03 17:21:49

回答

1

如果你想從數據庫中查詢,你必須通過某種方式傳遞id。

可以使用查詢字符串(名稱 - 值對),或者像上面那樣在URI中使用它。

如果你不想做pagina在你的URI你可以有你的URI是這樣的: http://www.website.nl/wie-ben-ik/<the number you want to send>

RewriteCond %{REQUEST_URI} ^/(wie-ben-ik)/(\d+) 
RewriteRule^/pagina/%2/%1\.html 
0

嘗試將以下內容添加到網站根目錄中的.htaccess文件中。

RewriteEngine on 
RewriteBase/

#redirect http://www.website.nl/pagina/4/wie-ben-ik.html to http://www.website.nl/wie-ben-ik 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /pagina/4/(wie-ben-ik)\.html [NC]  
RewriteRule^%1 [L,R=301] 

#process wie-ben-ik as http://www.website.nl/pagina/4/wie-ben-ik.html 
RewriteRule ^([-a-zA-Z]+)$ pagina/4/$1.html [L,NC]