Xampp虚拟主机 - 访问被拒绝

ger*_*789 3 apache xampp

我正在我的笔记本电脑上运行XAMPP服务器而我正在尝试设置虚拟主机.

我的hosts文件看起来像这样:

127.0.0.1      localhost
127.0.0.1      localhost.com
127.0.0.1      ehc.local
127.0.0.1      bal.local
Run Code Online (Sandbox Code Playgroud)

httpd-vhosts.conf文件如下所示:

NameVirtualHost *:80
<VirtualHost ehc.local:80>
   DocumentRoot "C:/wamp/EHC/src/main/php/www"
   ServerName ehc.local
   SetEnv APPLICATION_ENV "local"

   <Directory "C:/wamp/EHC/src/main/php/www">
      Options Indexes MultiViews FollowSymLinks
      AllowOverride All
      Order allow,deny
      Allow from all
   </Directory>
   ErrorLog "logs/ehc.dev-error_log"
   CustomLog "logs/ehc.dev-access_log" common
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

当我浏览到'ehc.local'时,我只得到默认的403错误页面.

我怎样才能解决这个问题?

谢谢!

Ger*_*son 8

这是针对osx但在windows中必须相同(或类似):

由于Apache默认情况下作为"nobody"用户运行,因此它可能没有足够的权限来浏览[OSX/Win]用户目录或其某些子目录,在这种情况下,当您使用时,您将看到403'访问被禁止'错误尝试查看您的开发站点.同样,您可能会发现虽然您可以查看您的开发站点,但是当您尝试在文件系统上写入文件或创建目录时,PHP会抛出错误.

要解决此问题,您可以将Apache配置为以[OSX/Win]用户身份运行.打开httpd.conf并查找以下行:

# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User nobody
Group nogroup
Run Code Online (Sandbox Code Playgroud)

将用户更改为您的[OSX/Win]用户名,并保存文件:

User yourusername
Run Code Online (Sandbox Code Playgroud)

重新启动Apache,您现在应该可以在没有任何问题的情况下浏览您的站点,包括使用PHP操作文件和文件夹.

资源

我希望它会有所帮助,问候!


小智 6

更改用户无效。对我来说,正是这个答案才成功了: 添加VirtualHost失败:禁止访问错误403(XAMPP)(Windows 7)

只需添加Require all granted到您的<Directory>设置中,它便会按预期工作。


Pie*_*ert 0

你应该尝试这个:

-> 转到 XAMPP 文件夹,

-> 打开 apache-conf-extra 文件夹

-> 使用您选择的文本编辑器打开 httpd-xampp.conf

一直向下滚动,直到找到Deny from all并更改它Allow from all