2014-06-23 84 views
-1

我想保持在地址欄中的鏈接越短,乾淨越好,例如:從斜線查詢(PHP/.htaccess)是否

http://example.com/th1ng 

如果在數據庫中有一個排'th1ng'作爲用戶名,上面的鏈接應該像

http://example.com/user.php?name=th1ng 

雖然仍然顯示地址欄中的第一個乾淨的鏈接。


如果用戶不存在,它將顯示/重定向到404頁面。

此外,還有其他文件和目錄需要通過尾部斜線進行訪問。並且可以有在頂部的GET查詢,以及像

http://example.com/th1ng?img=13805 

應該像

http://example.com/user.php?name=th1ng?img=13805 

我把所有的PHP的東西,包括數據庫檢查和重定向到用戶不存在的情況下爲404。

但是..什麼是正確的方式來解決在地址欄中顯示乾淨的鏈接?與服務器上的其他文件和目錄仍然可以訪問。我只能假設需要使用一些.htaccess,但我不明白究竟如何。

感謝您的幫助!

回答

2

你將需要使用mod_rewrite。這將被放置在.htaccess中。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ user.php?name=$1 [QSA,L] 
+0

刪除'/'爲'^ /(。*)$'在'.htaccess'中不起作用 – anubhava

+0

您是對的。更新了我的答案。 – colburton

+0

+1現在它會工作 – anubhava