Apache2 - 没有尾部斜杠的目录URL重定向到不同的URL

时间:2017-03-11 22:26:39

标签: php apache redirect apache2

我在使用Apache2在子目录中自动加载index.php时出现问题。 这是我在连接时在浏览器控制台中看到的内容:

GET http://example.com/login                     HTTP 301 Moved Permanently
GET http://10.0.3.10/login/
Connection Timed Out

当我输入http://example.com/login/时,它按预期工作。也, 根目录正确地重定向到index.php。

我对这个话题相当新,会提供任何帮助。

默认虚拟主机设置:

#NameVirtualHost *:80
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName example.com/
        ServerAlias www.example.com/

        DocumentRoot /var/www/example.com/
        <Directory />
                AllowOverride All
                DirectoryIndex index.php
        </Directory>
        <Directory /var/www/example.com/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
...

的httpd.conf:

<IfModule dir_module>
DirectoryIndex index.php
</IfModule>

没有使用.htaccess文件。

1 个答案:

答案 0 :(得分:0)

我认为您的请求是由没有ServerName的虚拟主机处理的,启动时httpd可能会警告您无法找到本地IP的默认主机名(10.0.3.10)

尝试从ServerName和ServerAlias中删除尾部斜杠。如果ServerName或ServerAlias与系统主机名匹配,则需要执行更多操作 - 即将虚拟ServerName添加到默认vhost。