.htaccess 如何删除子文件夹目录中每个文件末尾的/?

jw5wzhpr  于 2023-08-06  发布在  其他
关注(0)|答案(1)|浏览(126)

我有一个新网站,但有一个内部服务器错误的问题,当我通过谷歌访问一些页面。
我需要删除URL末尾的/才能使其工作。目前我已经写了每个重写规则来删除结尾的/,如下所示:

RewriteRule lawn-care/north-yorkshire/ lawn-care/north-yorkshire [L,R]
RewriteRule lawn-care/edinburgh/ lawn-care/edinburgh [L,R]
RewriteRule lawn-care/croydon/ lawn-care/croydon [L,R]

字符串
有没有什么方法可以让我一下子做到这一点?我只需要对草坪护理文件夹中的文件执行此操作。

  • 谢谢你-谢谢
Don't have much experience with htaccess files. So I'm not sure what to try as I'm not clear on what stuff like (.*) ^ $1 do.

igetnqfo

igetnqfo1#

你的问题很模糊,不清楚你实际上想做什么。如果您想更改指向这些位置的链接,那么重写就无能为力了。你需要改变分发这些链接的逻辑。
如果您想重写对这些资源的传入请求,那么就像您所做的那样使用RewriteRule,但我希望您希望实现内部重写,而不是外部重定向。所以没有R标志。
当然,如果对该“目录”中所有资源的请求都应该被重写,您可以实现一个通用规则:

RewriteEngine on
RewriteRule ^/?lawn-care/(.+)/$ /lawn-care/$1 [L]

字符串
一般来说,此类规则的最佳位置是http主机的中央配置。如果你选择使用一个 distributed 配置文件(“.htaccess”),尽管这确实会降低服务器的速度。如果你必须这样做,那么你要注意这个文件对于http服务器进程来说是可读的,并且它位于你的http主机的DOCUMENT_ROOT文件夹中。

相关问题