2015-02-10 50 views
-1

我想从头开始设置我的Apache2,它没有启用任何模块安装,或任何相关的默认配置为什么可以被认为是'网络主机'(实际上HTML显示为文本和PHP下载的文件)DirectoryIndex忽略index.php

反正我有这个在我的httpd.conf

# Default Directory Settings 
<Directory /> 
    DirectoryIndex index.html index.php 
    Options FollowSymLinks 
    AllowOverride All 
</Directory> 

的index.html似乎工作在默认情况下找到,但index.php文件将无法正常工作。我究竟做错了什么?

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    <IfModule mod_php5.c> 
     AddType application/x-httpd-php .php 
     AddType application/x-httpd-php-source .phps 
     php_flag magic_quotes_gpc Off 
     php_flag track_vars On 
     php_flag register_globals Off 
     php_value include_path . 
    </IfModule> 
    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
    DocumentRoot /home/was/www 
    <Directory /home/was/www/> 
     Options FollowSymLinks 
     Options +ExecCGI Indexes FollowSymLinks MultiViews 
     DirectoryIndex index.html index.php 
     AllowOverride All 
     Order allow,deny 
     allow from all 
    </Directory> 
    <Location /cgi-bin > 
     SetHandler cgi-script 
     Options +ExecCGI 
    </Location> 
    <Directory /usr/lib/cgi-bin> 
     AllowOverride None 
     Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
     Order allow,deny 
     Allow from all 
    </Directory> 

    ErrorLog ${APACHE_LOG_DIR}/error.log 

    # Possible values include: debug, info, notice, warn, error, crit, 
    # alert, emerg. 
    LogLevel warn 

    CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost> 

注意所有的黑客只是为了让事情工作,如PHP。它很烦人。

+0

我很确定'AddType'只是告诉浏览器应该发回的头文件类型是'.php'文件的'x-httpd-php'。如果您需要处理这些文件中的php数据,请尝试使用'AddHandler application/x-httpd-php .php' – Ohgodwhy 2015-02-10 05:27:17

+0

哦,真的吗?因为代码随PHP一起提供,并且使用PHP,PHP不起作用,但没有它。结果发现整个问题是该网站未启用。但是Apache仍然在阅读文件的一部分,并利用它,主要是IP和端口监听,这让我认为它是全部工作的。我的朋友从来没有告诉过我他从未跑过'a2ensite' – WASasquatch 2015-02-11 01:04:12

回答

0

显然,如果您没有启用网站,Apache2可能会加载该文件并使用它的一些设置。

该文件特别声明了我要使用的一个IP,并转发到新端口上的新WWW文档根目录。这是工作,即使与网站禁用,但<directory>和其他设置而不是工作,直到我启用它。

我的不好,但Apache2的一部分奇怪的功能。