这是我的.htaccess文件的代码:
RewriteEngine On # Turn on the rewriting engine
RewriteRule ^alluniversitiesview/([^\.]*)\.html$ alluniversitiesview.php?search=$1 [NC,L] # Handle product
RewriteRule ^search/([^\.]*)\.html$ index.php?search=$1 [NC,L] # Handle product
ErrorDocument 404 /search/404.html
ErrorDocument 401 /search/401.html
ErrorDocument 500 /search/500.html
ErrorDocument 403 /search/403.html
ErrorDocument 400 /search/400.html
我的要求: 如果你去to
http://universitybingo.com/search/HARVARD+UNIV.html
http://universitybingo.com/search/HARVARD+UNI5V!.ER%SITY375E.html
工作正常。
但是当url包含(%)时,它不像上面那样工作
的示例答案 0 :(得分:1)
%
是网址的转义字符。
但是根据其他答案,例如htaccess to escape percent (%) from URL或https://www.webmasterworld.com/apache/4220265.htm
您可以尝试使用mod_rewrite
的{{3}}:
RewriteRule ^alluniversitiesview/([^\.]*)\.html$ alluniversitiesview.php?search=$1 [NC,L,B] # Handle product
RewriteRule ^search/([^\.]*)\.html$ index.php?search=$1 [NC,L,B] # Handle product
答案 1 :(得分:1)
检查mod重写引擎的第一个是否开启?
以后可以使用以下html代码:
RewriteRule ^alluniversitiesview/([^\.]*)\.html$ alluniversitiesview.php?search=$1 [NC,L,B] # Handle product
RewriteRule ^search/([^\.]*)\.html$ index.php?search=$1 [NC,L,B] # Handle product