首页 >后端开发 >php教程 >实例详解Apache和PHP结合实现代码

实例详解Apache和PHP结合实现代码

小云云
小云云原创
2018-03-09 15:36:021662浏览

本文主要和大家分享Apache和PHP结合实现代码,希望能帮助到大家。

Apache和PHP结合

配置httpd支持PHP
ServerName
Require all denied
AddType application/x-httpd-php .php  //解析PHP
DirectoryIndex index.html index.php

[root@shuai-01 ~]# vim /usr/local/apache2.4/conf/httpd.conf

修改

找到ServerName 行,取消注释

ServerName www.example.com:80

找到Require all,

<Directory />
    AllowOverride none
    Require all granted
</Directory>

Require all granted

找到
    AddType application/x-compress .Z
   AddType application/x-gzip .gz .tgz

增加

AddType application/x-httpd-php .php

找到

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

增加为

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

检测配置文件语法是否有错误

[root@shuai-01 ~]# /usr/local/apache2.4/bin/apachectl -t
Syntax OK

重新加载配置文件

[root@shuai-01 ~]# /usr/local/apache2.4/bin/apachectl graceful

配置成功

这里写图片描述

访问PHP其实是访问(/usr

/local/apache2.4/htdocs/*.php)
在该目录下写一个1.php 文


[root@shuai-01 ~]# vi /usr/local/apache2.4/htdocs/1.php

<?php
phpinfo();
?>

保存退出后开始访问

这里写图片描述

能解释1出来的页面就成功了,不能解释出来的就是页面源代码
这里写图片描述

没解释出来的问题排查

1, 检查有没有加载PHP5的模块

[root@shuai-01 ~]# /usr/local/apache2.4/bin/apachectl -M

这里写图片描述

2,没加载模块,看有没有模块文件

[root@shuai-01 ~]# ls /usr/local/apache2.4/modules/libphp5.so 
/usr/local/apache2.4/modules/libphp5.so

3,查看配置文件中有没有加载libphp5.so的配置

[root@shuai-01 ~]# vim /usr/local/apache2.4/conf/httpd.conf

LoadModule php5_module        modules/libphp5.so

4,看配置文件中有没有加

AddType application/x-httpd-php .php

问题1:
Apache服务开启可能回有的报错

这里写图片描述

编写配置文件(/usr/local/apache2.4/conf/httpd.conf):

找到ServerName 行,取消注释

ServerName www.example.com:80

问题2 :
Apache服务开启可能回有的报错

/usr/local/apache2.4/bin/apachectl: 行 79:  3519 段错误               $HTTPD -k $ARGV

这里写图片描述

是你跑了两个PHP模块,注释掉一个。

LoadModule php5_module        modules/libphp5.so
#LoadModule php7_module        modules/libphp7.so

问题3:

这里写图片描述

排查方法:

1,看IP是否通。
这里写图片描述
IP通,再看80端口是否开启

这里写图片描述
因为Windows没有打开Telnet客户端
打开客户端
控制面板-程序-打开或关闭Windows功能
这里写图片描述

这里写图片描述

这是就打开了Telnet,但是没通(服务端没规则iptables)
这里写图片描述

在linux添加规则

[root@shuai-01 ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT

这里写图片描述

相关推荐:

Apache和PHP的配置详细讲解
Apache和PHP安装 Apache2中实现多网站域名绑定的实现方法

PHP开发环境的配置(Linux平台上安装Apache和PHP)_PHP教程

以上是实例详解Apache和PHP结合实现代码的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn