2017-04-09 147 views
1

我一直在試圖讓我的網址「漂亮」 /人類可讀的,此刻的網址是:.htaccess重寫url參數?

[BASE_URL]/?action=viewProposal&proposaltitle=tesst 

我想重寫他們只是[BASE_URL]/tesst

我嘗試使用下面的代碼並修改它,但它不會工作,即。它沒有重定向頁面,但沒有拋出任何錯誤。

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{SCRIPT_FILENAME} !-f 

RewriteRule ^users/(\d+)*$ ./profile.php?id=$1 
RewriteRule ^threads/(\d+)*$ ./thread.php?id=$1 

RewriteRule ^search/(.*)$ ./search.php?query=$1 

請問PHP的GET函數還能正常工作嗎?動作定義了它的view/edit/delete嗎?

+0

你想對你preety網址爲**/viewProposal/tesst **(2段)或**/** tesst?如果是**/tesst **,那麼下面的答案應該可以工作。 – starkeen

+0

@starkeen如果一個參數是一個ID然後一個slu for例如: /viewpost.php?id=2&slug=$1 這將如何工作如果該ID是兩個重定向URL? 如果是這樣,你怎麼能讓它忽略ID參數,並將網址設置爲/ [slug] –

回答

1

我假設基礎URL您的index.php嘗試下面的規則,

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^([\w-]+)$ index.php?action=viewProposal&proposaltitle=$1 [QSA,L] 
+0

那沒有工作夥伴,它的基礎網址如http://www.google.co.uk/?action= viewProposal&proposaltitle = tesst –

+0

仍然應該有一些頁面來處理值或不是?或者你在使用某種框架? –

+0

不,它在index.php上運行,但網址顯示爲只是一個/然後參數 它是一個定製的CMS提案,目前只是在處理漂亮的URL。有沒有任何理由它不會工作? 我沒有訪問與index.php的網址,但他們仍然沒有重定向。 –