Apache只加载“它工作”而不是文件

时间:2014-01-27 00:01:18

标签: html apache virtualhost markup

我最近清除了我的硬盘驱动器并重新安装了Apache,我在其他网站上看到了这个,但没有一个解决方案适用于我,当我执行根网站域时,Apache一直显示“它有效”({{3 })。它不显示其中的文件夹和文件。

另一个问题是,当我尝试加载我的网站文件夹(http://wrks.tk/)时,会出现404错误。

在我的httpd-vhosts.conf中:

<VirtualHost *:80>
    DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>

<VirtualHost *:80>
        DocumentRoot "/Workarea"
        ServerName wrks.tk
        ErrorLog "/Logs/Workarea/wrks-err"
        CustomLog "/Logs/Workarea/wrks-acc" common
        <Directory "/Workarea">
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>
</VirtualHost>

所有事情的位置都是正确的。

EDIT 1

好的,我找到了/Library/WebServer/Documents中的index.html文件,它包含“It works!”。但这对我没有多大帮助。


EDIT 2

我将DirectoryIndex Home.php添加到我的虚拟主机。然后在我的网站上添加了一个Home.php,并在其中添加了一些内容,但我仍然得到“它有效!”。


EDIT 3

我注意到我甚至无法编辑文件名,因此我将该文件夹重命名为其他内容,但无效。我也试过制作一个新文件夹。这也不起作用。

1 个答案:

答案 0 :(得分:0)

内置的apache并非真正开箱即用,无法用作开发环境。

我发现最好设置/Library/WebServer/Documents,其中的所有内容都由您的用户帐户拥有,而不是由系统拥有(记得在进行更改后重新启动apache)。

然后编辑/etc/apache2/httpd.conf并找到用户/组,并将其从默认值更改为也以您的用户身份运行。这就是我的样子:

#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
#
# 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 abhi
Group staff

然后你可以删除index.html以及那里的所有其他垃圾。它不用于任何东西。

httpd.conf中可能还有许多其他内容需要更改,例如启用.htaccess文件以便在典型的Linux服务器上完全运行。 PHP也需要配置更改,例如默认情况下它不显示错误 - 代码中的错误只会给你一个空白页。

或者......安装MAMP,因为它更容易使用,并且设计用于开发,不像Apple安装apache。