2016-06-16 71 views
1

我想將任何url請求重定向到我的「index.php」頁面,再加上一個查詢字符串。像這樣:.htaccess將所有url請求重定向到查詢的單個頁面

,如果用戶鍵入地址欄中輸入「mydomain.com/foo」,htaccess的重定向到「的index.php」,但在PHP文件$_SERVER[]變量包含「foo」的字符串

換句話說,我需要

「mydomain.com/」後面的任何字符串保存在「index.php」文件中的變量中。

another examples: 
mydomain.com/new/bar ----> "new/bar" 
mydomain.com/search?color=15 ----> "search?color=15" 

是不是有可能與htaccess或必須嘗試另一種方式?

+0

當然這是可能的。這個問題已經在SO上單獨回答了大約4548264538次。這些答案都沒有幫助你解決這個任務? _爲什麼不呢?_看看右側「相關」部分的開始。 – arkascha

+0

@arkascha不幸的是我花了幾個小時才找到上次話題的正確答案。這些都非常相似,但他們都沒有做我的榜樣。 –

+1

當然,但這些相似的答案應該足以自己解決任務。拿這個例子來說吧:http://stackoverflow.com/questions/28433092/redirect-all-requests-to-index-php-using-htaccess你所要做的就是移除'q ='並且你得到了你的解決方案。或者你離開整個'?q = $ 1'。 – arkascha

回答

1

您可以使用此規則重寫index.php文件的所有請求

RewriteEngine on 
RewriteCond %{REQUEST_URI} !^/index\.php$ 
RewriteRule^/index.php [L] 

,然後在index.php文件,你可以使用下面的PHP代碼獲得請求的URI:

echo $_SERVER["REQUEST_URI"]; 
+1

謝謝!現在它爲我工作。 :)只是我應該在我的本地apache服務器上定製它 –

相關問題