对于WAMP,apache等,我是一个完整的新手。
我试图让一个网站在本地运行,但到目前为止没有任何运气。我已经安装了WAMP,它似乎在网上很好,即绿色" W"图标是绿色的。像phpmyadmin这样的功能似乎正在发挥作用。当我点击" localhost"它会打开浏览器并导航到localhost,但是,我看到的只是目录列表。
所以,我的虚拟主机设置如下:
<VirtualHost *:80>
DocumentRoot "c:/wamp/www"
ServerName localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/bts/BiteTheSun"
ServerName bts
ServerAlias bts
<Directory "c:/wamp/www/bts/BiteTheSun">
Require all granted
</Directory>
</VirtualHost>
在我的主机文件中我有:
127.0.0.1 localhost
127.0.0.1 bts
::1 bts
::1 localhost
我添加了一些图片只是为了清楚问题 - 顶部图片显示了我认为应该看到的内容,底部显示了我实际看到的内容:
我已经尝试了我能想到的一切无济于事。在日志文件[apache_error.log]中我也可能会提到有关权限的错误:
&#34; AH01630:客户端被服务器配置拒绝:C:/ Apache24,referer:http://localhost/&#34;
但是,我已经使用来自多个来源的示例完成了配置文件中设置的权限,似乎没有任何问题。
有谁知道这里发生了什么?我已经在网上搜索了这个问题,而其他人似乎确实存在这个问题,这让我觉得这是我做一些非常愚蠢的事情 - 我只需要有人指出究竟是什么! :)
理查德
答案 0 :(得分:1)
www文件夹中是否有索引文件?
通常,您希望将各个项目放在www文件夹中,并将虚拟主机指向应包含index.php文件的www / your-project /文件夹(除非您有自定义设置将虚拟主机直接指向特定文件。)
答案 1 :(得分:0)
您的虚拟主机定义不完整。
每个VH都应该有自己的<Directory>...</Directory>
定义,以便您可以将访问权限和其他配置信息应用于该目录。
您缺少的部分是AllowOverride
和Options
。
另一件需要记住的事情是,当您创建虚拟主机环境时,httpd.conf
文件中定义的主机基本上被忽略,而VH将占据主导地位。这就是您需要重新定义VH文件中的localhost
的原因。
<VirtualHost *:80>
DocumentRoot "c:/wamp/www"
ServerName localhost
<Directory "c:/wamp/www">
AllowOverride All
Require local
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/bts/BiteTheSun"
ServerName bts
<Directory "c:/wamp/www/bts/BiteTheSun">
AllowOverride All
Options Indexes FollowSymLinks
Require local
</Directory>
</VirtualHost>
您的AH01630: client denied by server configuration: C:/Apache24
错误可能是因为默认的httpd-vhost.conf
文件附带了Apache提供的2个示例定义。这些应该从文件中完全删除。因此,如果您将这些留在httpd-vhost.conf
文件中。完全从文件中删除它们。
要删除的defs示例。请注意,它们使用的c:/Apache24
目录不存在,也不应存在于WAMPServer环境中!
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
ServerName dummy-host2.example.com
ErrorLog "logs/dummy-host2.example.com-error.log"
CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>