2014-07-12 12 views
-1

我試圖使用PHP獲取地址欄中的URL,但$_SERVER['REQUEST_URI']將該路徑返回到實際文件,而不是使用.htaccess創建的URL。例如,如果我的文件是在如何在PHP中使用htaccess重寫後獲得可見的URL(不是實際的URL)?

example.com/files/example.php 

但我已經改變了網址:

example.com/example 

我想要得到的漂亮的網址,使用PHP,而不是實際的路徑。 $_SERVER['REQUEST_URI']正在返回實際路徑。

+0

@ this.lau_不是重複。這個答案會在重定向後得到url – Basic

+0

當然,如果你知道如何重寫htaccess文件中的url,你可以很容易地在$ _SERVER ['REQUEST_URI']的php中使用相同的邏輯來使你的重寫url? http://stackoverflow.com/questions/6588661/php-how-can-i-get-the-url-that-has-been-rewritten-with-mod-rewrite答案可能會幫助你。 – iyop45

+1

我沒有得到它'$ _SERVER ['REQUEST_URI']'將返回地址欄中的內容,除非您在重寫時做了一些古怪的事情,並且如果可以的話顯示它們。 –

回答

1

如果您的服務器將瀏覽器重定向到新的URL,您可以從$_SERVER['HTTP_REFERER']獲取舊URL。

0
$prettyUrl= str_replace(array('files/', '.php'), ' ', $_SERVER['PHP_SELF']); 

明顯不同的邏輯取決於什麼頁面及其對應的htaccess重寫。

雖然當然如您所指的是$ _SERVER ['PHP_SELF'],人們會認爲您正在談論重定向?如果是這樣的話,url應該已經從瀏覽器發送過來了。