2010-08-30 44 views
0

自從我在PHP中做了任何事情之後,它已經非常長時間了。 會有人關心解釋如何實現這樣的效果:PHP中的目錄樣式重定向

我去mydomain.com/user/peter ,並得到一個定製的用戶頁面,此用戶名「彼得」 能行這樣,彼得被輸送到一些PHP腳本,爲用戶參數生成頁面?它有點類似於通過url傳遞參數,但看起來更好看,這個東西是如何被調用的?

(我知道這聽起來很奇怪,但我敢肯定你高級PHP程序員會知道我在問)

回答

4

如果使用Apache,mod_rewrite的可以解決這個問題:

RewriteEngine on 
RewriteRule /user/([^/]+) /user.php?name=$1 [B,QSA] 

如果在根.htaccess文件:

RewriteEngine on 
RewriteRule user/([^/]+) user.php?name=$1 [B,QSA] 

查看的文檔爲mod_rewrite

您也可以啓用MultiView,然後這些請求將自動映射到user.php。您可以訪問user$_SERVER['PATH_INFO後的值]`:

Options +MultiViews 

請參閱該文檔爲content negotiation

1

你說的是URL重寫。你需要.htaccess和mod_rewrite。

+0

對於downvoter:因爲答案專門回答OP的問題,即「它有點像通過url傳遞參數的工作,但看起來更好,這個東西叫什麼? downvote血管完全不需要。 – 2010-08-30 21:01:59

+0

沒想到仇敵。 +1 – 2010-08-30 21:08:20

0

我知道這已經回答了,但IIS用戶(像我一樣)可以使用完成與正則表達式相同的任務。我已經安裝了它,它運行良好。