2017-04-09 113 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的网址,但他们仍然没有重定向。 –