如果url以双破折号结尾,则要重写(Apache)
若url以双破折号或连字符(-)结尾,我需要重定向到某个内部页面如果url以双破折号结尾,则要重写(Apache),apache,mod-rewrite,Apache,Mod Rewrite,若url以双破折号或连字符(-)结尾,我需要重定向到某个内部页面 RewriteEngine On RewriteCond %{REQUEST_URI} --$ RewriteRule .* /error www.mySite.com/myPage--将www.mySite.com/error 但它不起作用。这个代码有什么错误吗 我认为这是因为它处理的是特殊字符而不是字符串 *编辑 这是我的全部vhost.conf ServerName mysite.com DocumentRoot "/my
RewriteEngine On
RewriteCond %{REQUEST_URI} --$
RewriteRule .* /error
www.mySite.com/myPage--将www.mySite.com/error
但它不起作用。这个代码有什么错误吗
我认为这是因为它处理的是特殊字符而不是字符串
*编辑
这是我的全部vhost.conf
ServerName mysite.com
DocumentRoot "/myWebRoot/"
ErrorDocument 400 /jsp/errorHandler.jsp
ErrorDocument 403 /jsp/errorHandler.jsp
ErrorDocument 404 /jsp/errorHandler.jsp
ErrorDocument 500 /jsp/errorHandler.jsp
ErrorDocument 503 /jsp/errorHandler.jsp
RedirectMatch --$ /jsp/errorHandler.jsp
<IfModule mod_jk.c>
JkMount /*.jsp mysite
JkMount /*.do mysite
JkMount /*.page mysite
JkMount /*.json mysite
JkMount /servlet/* mysite
</IfModule>
<LocationMatch "/servlet/*">
SetHandler jakarta-servlet
SetEnv JK_WORKER_NAME mysite
</LocationMatch>
<LocationMatch "/*\.(do$|jsp$)">
SetHandler jakarta-servlet
SetEnv JK_WORKER_NAME mysite
</LocationMatch>
# BEGIN Expire headers
<ifModule mod_expires.c>
ExpiresActive On
ExpiresByType image/x-icon "access plus 2592000 seconds"
......
</ifModule>
# END Expire headers
# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
<LocationMatch "\.(json)$">
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
</LocationMatch>
<LocationMatch "\.(do)$">
Header set Cache-Control "max-age=8640000, public, must-revalidate"
</LocationMatch>
<LocationMatch "/*/header.jsp">
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
</LocationMatch>
</ifModule>
# END Cache-Control Headers
<Directory "/myWebRoot/">
Options -Indexes FollowSymLinks MultiViews
AllowOverride none
Order allow,deny
Allow from all
Deny from env=go_out
</Directory>
ServerName mysite.com
DocumentRoot“/myWebRoot/”
ErrorDocument 400/jsp/errorHandler.jsp
ErrorDocument 403/jsp/errorHandler.jsp
ErrorDocument 404/jsp/errorHandler.jsp
ErrorDocument 500/jsp/errorHandler.jsp
ErrorDocument 503/jsp/errorHandler.jsp
重定向匹配--$/jsp/errorHandler.jsp
JkMount/*.jsp mysite
JkMount/*.do mysite
JkMount/*.page mysite
JkMount/*.json mysite
JkMount/servlet/*mysite
SetHandler jakarta servlet
SetEnv JK_WORKER_NAME mysite
SetHandler jakarta servlet
SetEnv JK_WORKER_NAME mysite
#开始过期标题
过期于
ExpiresByType图像/x图标“访问加2592000秒”
......
#结束过期标头
#开始缓存控制头
标题集缓存控制“最大年龄=0,无缓存,无存储,必须重新验证”
标头集缓存控制“最大年龄=8640000,公共,必须重新验证”
标题集缓存控制“最大年龄=0,无缓存,无存储,必须重新验证”
#结束缓存控制头
选项-索引跟随符号链接多视图
不允许超限
命令允许,拒绝
通融
拒绝来自环境=退出
这应该可以:
RewriteEngine On
RewriteRule --$ /error
如果需要实际重定向,可以使用:
RedirectMatch --$ /error
“不工作”告诉我什么。这是在.htaccess文件中还是在virtualhost配置中?你们有其他可能干扰的重写规则吗?这是我的virtualhost配置。(vhost.conf)我将把我的整个配置代码添加到问题中。在我看来,没有什么会干扰规则。