目前,当请求不是目录的 URL 时,我的 .htaccess 设置为删除任何尾部斜杠。问题是,这导致 test.domain.com/order.php/ 被重定向到 test.domain.com/test/order.php 而不是 test.domain.com/order.php。当不在子域中时,它可以完美运行。
这是我用来删除尾部斜杠的 .htaccess 代码:
#if it's not a directory
RewriteCond %{REQUEST_FILENAME} !-d
#and it has a trailing slash, then redirect to URL without slash
RewriteRule ^(.+)/$ /$1 [L,R=301]
不知何故,除了已经存在的子域之外,子域所服务的子目录也被添加到 URL 中。如何在不添加 /test 的情况下删除尾部斜杠?
编辑:
这是完整的 .htaccess:
RewriteEngine On
Options +SymLinksIfOwnerMatch
Options -Indexes
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [L,R=301]