DirectoryIndex忽略index.php
我正在尝试从头开始安装Apache2,它安装时没有启用任何模块,或者任何相关的默认配置都可以被视为“web主机”(事实上html显示为文本,PHP文件下载) 无论如何,我在httpd.conf中有这个DirectoryIndex忽略index.php,php,apache,failed-installation,apache2.2,Php,Apache,Failed Installation,Apache2.2,我正在尝试从头开始安装Apache2,它安装时没有启用任何模块,或者任何相关的默认配置都可以被视为“web主机”(事实上html显示为文本,PHP文件下载) 无论如何,我在httpd.conf中有这个 # Default Directory Settings <Directory /> DirectoryIndex index.html index.php Options FollowSymLinks AllowOverride All </Dir
# Default Directory Settings
<Directory />
DirectoryIndex index.html index.php
Options FollowSymLinks
AllowOverride All
</Directory>
#默认目录设置
DirectoryIndex.html index.php
选项如下符号链接
允许超越所有
默认情况下,index.html似乎可以工作,但index.php无法工作。我做错了什么
<VirtualHost *:80>
ServerAdmin webmaster@localhost
<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>
服务器管理员webmaster@localhost
AddType应用程序/x-httpd-php.php
AddType应用程序/x-httpd-php-source.phps
php_标志魔术_引号_gpc关闭
php_标志跟踪_变量打开
php_标志寄存器_全局关闭
php_值包括_路径。
ScriptAlias/cgi-bin//usr/lib/cgi-bin/
DocumentRoot/home/was/www
选项如下符号链接
选项+执行CGI索引跟随符号链接多视图
DirectoryIndex.html index.php
允许超越所有
命令允许,拒绝
通融
SetHandler cgi脚本
选项+执行CGI
不允许超限
选项+执行CGI-多视图+符号链接所有者匹配
命令允许,拒绝
通融
ErrorLog${APACHE_LOG_DIR}/error.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合
注意,所有的黑客只是为了让事情正常工作,比如PHP。真烦人 显然,如果您没有启用站点,Apache2可能仍然会加载该文件并使用其某些设置 特别是,该文件声明了我的一个IP要使用,并在新端口上转发到新的www文档根目录。即使在站点被禁用的情况下,这仍然有效,但是
和其他设置都不起作用,直到我启用了它
我认为Apache2的功能不好,但很奇怪 我很确定,
AddType
只是告诉浏览器,对于.php
文件,应该发回的头类型是x-httpd-php
。如果需要处理这些文件中的php数据,请尝试使用AddHandler应用程序/x-httpd-php.php
Oh真的吗?因为这段代码是PHP的开箱即用,有了它,PHP就可以工作,没有它,它就不能工作。原来整个问题是该站点没有启用。但是Apache仍然在读取文件的一部分,并利用它,主要是IP和端口监听,这让我觉得一切正常。我的朋友从来没有告诉过我他从来没有在上面跑过一段时间