我正在为我的search.php页面寻找正确的htaccess规则。因为我尝试了几次,但没有奏效。我现有的htaccess规则可能会与它冲突。所以我也在这里粘贴我当前的htaccess文件。目前,我有以下搜索网页网址查询字符串:htaccess for search.php的规则页面
http://my-domain.com/search.php?q=keyword
我想下面的清洁网址:
http://my-domain.com/search/keyword
我的HTML形式是:
<form method="get" action="search.php">
<input type="text" name="q" class="txtfield" value="<?php echo $q; ?>" placeholder="Search post here..." />
</form>
的htaccess:
Options +FollowSymlinks -MultiViews
RewriteBase/
#Enable mod rewrite
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)$ page.php?category=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/([^/]+)$ page.php?category=$1&post=$2 [QSA,L]
请注意,我没有在上述文件中搜索相关的htaccess规则,因为我说没有任何工作。我总是看到404页面。这就是我删除它的原因。
而且如果我把表单提交按钮,在未来的某个象下面这样:
http://my-domain.com/search.php?q=keyword&btnsearch=Search
然后我想知道什么校正/修改我将:
<form method="get" action="search.php">
<input type="text" name="q" class="txtfield" value="<?php echo $q; ?>" placeholder="Search post here..." />
<input type="submit" name="btnsearch" class="btn" value="Search" />
</form>
我的搜索URL将改变必须在正确的htaccess规则中执行,您将根据我的第一个查询向我提供哪些规则?如果搜索网址包含两个或两个以上的查询字符串,我们是否应该有两条规则?请帮助我这个家伙。谢谢。
好吧,但我不明白为什么每个人都建议使用JavaScript?为什么只能在PHP/htaccess中完成?如果有人在他的浏览器中关闭了JS,会发生什么?你能告诉我如何在没有JS的情况下做到这一点吗? – user5307298
我想要一个解决方案,可以在两种情况下工作 - 一个没有提交按钮和提交按钮的表单。我需要两种情况下的htaccess规则。 – user5307298
嗯..那么什么是[http://matthewjamestaylor.com/blog/how-to-post-forms-to-clean-rewritten-urls](http://matthewjamestaylor.com/blog/how-to-post -form-to-clean-rewritten-urls)for? – user5307298