我正在尝试创建一个将实现以下内容的.htaccess文件
到目前为止这是我的代码
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^?search=([0-9]*)$ index.php?id=$1 ## e.g www.mydomain.com/?search=try
RewriteRule ^([A-Z]*)$ page.php?name=$1
## www.mydomain.com/About-Us
##ErrorDocument 404 PageNotavailabale
####Protect the system from machines with worms
RewriteRule (cmd|root)\.exe - [F,E=dontlog:1]
#### To hold and redirect css/images/js files
RewriteRule images/(.+)?$ images/$1 [NC,L]
RewriteRule css/(.+)?$ css/$1 [NC,L]
RewriteRule js/(.+)?$ js/$1 [NC,L]
答案 0 :(得分:3)
为什么不在搜索引擎中使用这种网址:www.domain.com/search/abc
?
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^search/([a-zA-Z0-9]+)$ index.php?search=$1
RewriteRule ^([a-zA-Z0-9]+)$ index.php?page=$1
然后,您使用www.domain.com/<myPage>
访问您的网页。
您的搜索引擎www.domain.com/search/<mySearch>
编辑:
请注意你的规则不允许很多参数:
^?search=([0-9]*)$
仅允许数字(甚至是空参数)^([A-Z]*)$
仅允许使用大写字母(以及空参数)