2014-11-08 146 views
2

我有一個網站有很多發送獲取請求的鏈接,我怎樣才能隱藏這些變量。例如,www.mysite.com/home.php?id=namewww.mysite.com/name和第二個鏈接www.mysite.com/page.php?id=1www.mysite.com/1 我能夠實現隱藏使用htaccess的第一個鏈接,但以前的鏈接,我不能。此網站上的所有問題地址均基於單一鏈接。 在此先感謝!如何隱藏在PHP中獲取多個鏈接的變量

+0

可能重複(http://stackoverflow.com/questions/559186/php-rewrite-rules) – Machavity 2014-11-08 15:44:46

回答

2

要區分這兩個問題,我認爲你可以先捕獲所有數字,然後再檢查\w+字符。

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代碼:

RewriteEngine On 
RewriteBase/

# skip all files and redirectories from rewrite 
RewriteCond %{REQUEST_FILENAME} -d [OR] 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule^- [L] 

RewriteRule ^(\d+)/?$ page.php?id=$1 [L,QSA] 

RewriteRule ^([\w-]+)/?$ home.php?id=$1 [L,QSA] 
[PHP重寫規則]的
+0

感謝來救我。我試圖添加更多的變量鏈接,說page.php?我會= 1和控制=新如何更改代碼。再次感謝。在htaccess中是非常新的 – 2014-11-08 17:09:14

+0

您可以添加:'RewriteRule ^(\ d +)/(\ w +)/ ?? $ page.php?id = $ 1&control = $ 2 [L,QSA]' – anubhava 2014-11-08 17:10:17

+0

我試過了, 404錯誤,找不到對象 – 2014-11-08 17:48:25