Apache URL重定向避免网址结尾斜线问题

结尾斜线问题
描述:
每个网主都曾受到结尾斜线问题的折磨,若在URL中没有结尾斜线,服务器就会认为URL无效并返回错误,因为服务器会根据 /~quux/foo去寻找 foo这个档案,而非显示这个目录。其实很多时候,这问题应留待用户自己加「/」去解决,但是用户会直接输入网址。 这样就会产生一个301重定向的请求。然后再次寻找到/index.html下。
方法:
最直观的方法就是令Apache自动加上「/」,使用外部重定向令浏览器能正确找到档案,若我们只做内部重定向,就只能正确显示目录页,在这目录页的图像文件会因相对URL的问题而找不到。例如我们请求 /~quux/foo/index.htmlimage.gif时,重定向后会变成 /~quux/image.gif
所以我们应使用以下方法:

RewriteEngineon
RewriteBase /~quux/
RewriteRule ^foo$foo/[R]

这方法也适用于.htaccess文件在各目录内设定,但这设定会覆盖原先主配置文件。

RewriteEngineon
RewriteBase /~quux/
RewriteCond %{REQUEST_FILENAME}-d
RewriteRule ^(.+[^/])___FCKpd___17nbsp; $1/[R]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值