0

我在一个子目录中托管了一个 Drupal7 站点,并且可以使用目录路径和尾部斜杠访问该站点:

http://mydomain.com/dir1/dir2/ (with the trailing slash).

我希望在没有斜杠的情况下访问此站点:

http://mydomain.com/dir1/dir2

我尝试在 .htaccess 文件中使用 DirectorySlash Off。但它在访问没有斜杠的站点时会出现访问禁止错误。

然后我在 ../dir1 中创建了一个新的 .htaccess 文件,并尝试在用户访问站点时重写 url 以获取主页内容而不使用尾部斜杠。

<IfModule mod_rewrite.c>
    DirectorySlash Off
    RewriteEngine on
   Options +FollowSymLinks
   RewriteRule ^dir2$ dir2/index.php
</IfModule>

我又遇到了同样的问题“禁止访问”。设置这些规则后,Drupal 根目录中的 .htaccess 文件有什么可做的吗?

知道如何访问托管在子目录中的 Drupal 站点而不使用斜杠吗?

4

1 回答 1

0

尝试这个。但我没有测试它。

基本上这里的技巧是使用 301 重定向来删除所有 URL 末尾的斜杠。放入 .HTACCESS 的代码

#remove trailing slashes
RewriteCond %{HTTP_HOST} !^\.domain\.com$ [NC]
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]

还有一个 Drupal 插件。根据他们的描述,它看起来符合您的要求。试一下。

https://drupal.org/project/globalredirect

于 2013-08-07T05:37:24.327 回答