centos6.5 linux配置apache httpd+php遇到的错误总结

没搞过php,真头痛

《1》通过yum装的,

yum -y install httpd

《2》不要乱修改配置文件(如LoadModule,AddType 什么的,根本不需要)

/etc/httpd/conf/httpd.conf

在/etc/httpd/conf/httpd.conf中,会加载其他conf文件

Include conf.d/*.conf

而应该在这里增加文件 /etc/httpd/conf.d/php.conf

【】网上一堆说直接修改该文件,随着时间的推移,这些资料都老了,这以后安装其他东西,也务必要小心,尤其是网上资料,很多都不说os、不说版本。

php.conf文件如下:(默认都是配置好的)

# easy for developers to write dynamically generated webpages.

#

<IfModule prefork.c>

  LoadModule php5_module modules/libphp5.so

</IfModule>

<IfModule worker.c>

  LoadModule php5_module modules/libphp5-zts.so

</IfModule>

#

# Cause the PHP interpreter to handle files with a .php extension.

#

AddHandler php5-script .php

AddType text/html .php

#

# Add index.php to the list of files that will be served as directory

# indexes.

#

DirectoryIndex index.php

#

# Uncomment the following line to allow PHP to pretty-print .phps

# files as PHP source code:

《3》检查httpd配置

[root@centos1 httpd]# apachectl  -t

Syntax OK

启动:httpd

访问发现如下:

Forbidden

You don't have permission to access /index.php on this server

 

网上搜索后,大部分说的是把,Deny from all 修改为 Allow from all

不管用!

搞了很久,都没进展。于是硬着头皮去看httpd.conf说明

 

发现:

Apache启动用户是用apache,而我安装使用root,启动也是用root用户,于是,我试了下使用apache用户能否访问DocumentRoot,

 

ls: 无法访问/var/www: 权限不够

因为,默认yum安装,DocumentRoot指向的/var/www/html,用户apache没有权限访问,这才是问题关键。

解决办法 2种都可以:

(1)修改启动用户

User apache

Group apache

将这个改成root

User root

Group root

(2)移动目录到具有访问权限下,重新指定DocumentRoot目录

方法1简单,但是不建议使用该方式。

重启apache(httpd -k restart)后,久违的It works!

 

猜你喜欢

转载自lvdccyb.iteye.com/blog/2172627
今日推荐