我有一个使用GET请求的搜索表单。当我点击enter时,url和往常一样不是SEO友好的,有什么方法可以让它在输入时显示SEO友好的url呢?
例如:
获取请求http://someurl.com?a=search&query=what+are+you+looking+for SEO应该是http://someurl.com/search/what+are+you+looking+for
我已经制定了一条规则
RewriteRule ^search/(\w+) index.php?a=search&query=$1在我的.htaccess中,当我手动在地址栏中输入SEO时,它可以工作。所以,我想这只是一个问题,确保当我点击enter在搜索字段,它加载SEO Url,而不是其他。
发布于 2016-07-13 13:05:21
您必须将原始uri重定向到新uri,在现有规则之前添加以下内容:
RewriteEngine on
RewriteCond %{THE_REQUEST} /(?:index\.php)?\?a=search&query=(.+)\sHTTP [NC]
RewriteRule ^ /search/%1? [NE,L,R]发布于 2016-07-13 12:49:58
您可以在您的.htaccess中使用这个
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /?a=$1&query=$2 [L]这将留给您URL:
http://someurl.com/search/what+are+you+looking+for
发布于 2017-11-04 02:10:35
我在路上这样做:)
这是搜索的表单
<form method="post">
<input type="text" name="search" placeholder="search"/>
</form>表格之前的
if(isset($_POST['search'])){
echo '<script>window.location = "www.domain.com/search/'.$_POST['search'].'"</script>';
}.htaccess与和in
RewriteEngine on
RewriteRule ^search/([^/]*)$ index.php?page=search&search=$1 [NC,L]https://stackoverflow.com/questions/38351785
复制相似问题