XAMPP访问禁止问题


XAMPP access forbidden issues

XAMPP出现问题,访问被禁止。

开始使用laravel,完全是MVC的新手,但我想试试。

开始出现页面路由问题,索引页工作正常,但我的路由不工作,都出现404错误。

在互联网上搜索一下,发现它可能是由于我的xampp/Apache配置。

玩了一个游戏
Allow from all

Require all granted

选项,但没有骰子。

这是我的vhosts条目:

<VirtualHost *:80>
    DocumentRoot "C:'Users'xxx'Desktop'Projects'xxx'Website-3.0'Website'public"
    ServerName gw3.dev
    <Directory "C:'Users'xxx'Desktop'Projects'xxx'Website-3.0'Website'public">
        Allow from all
        Require all granted
        Options Indexes
    </Directory>
</VirtualHost>

这是我在httpd.conf文件中编辑的内容。

<Directory />
    Require all granted
    Options FollowSymLinks
    AllowOverride All
    Allow from all
</Directory>

确保根目录不是只读的。然而我得到的都是403禁止访问错误。

运行Windows 10,供参考。

我不太确定我哪里错了。我是不是漏掉了什么?

本节

<Directory />
    Require all granted
    Options FollowSymLinks
    AllowOverride All
    Allow from all
</Directory>

为安装Apache的磁盘提供基本的安全性。基本做法是拒绝访问所有内容,然后只允许访问Apache应该访问的那些目录。此外,您正在使用apache 2.2。和2.4语法在一起,不好。

所以把它改回:-

<Directory />
    AllowOverride none
    Require all denied
</Directory>

在虚拟主机的定义中,您同时使用Apache 2.2和2.4语法。这不是一个好主意,它会导致Apache感到困惑。而且你正在使用DOS的反斜杠,那应该是unix的正斜杠。

所以试试这个

<VirtualHost *:80>
    DocumentRoot "C:/Users/xxx/Desktop/Projects/xxx/Website-3.0/Website/public"
    ServerName gw3.dev
    <Directory "C:/Users/xxx/Desktop/Projects/xxx/Website-3.0/Website/public">
        AllowOverride All
        Options Indexes FollowSymLinks
        Require all granted
    </Directory>
</VirtualHost>

如果你不打算允许任何人访问这个网站,那么你可以使用

Require local

或者如果您想从本地网络中的其他设备访问该站点,您可以尝试

Require ip 192.168.1

注意IPV4 ip地址的4个四分位数中只使用了3个。这允许从该子网中的任何ip访问。

还要确保您已将gw3.dev添加到IPV4和IPV6地址的HOSTS文件

127.0.0.1 gw3.dev
::1  gw3.dev

你需要

 AllowOverride All 

too in vhost

也不要忘记重新启动服务器