本文主要和大家分享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中文网其他相关文章!