LAMP-Apache和PHP的结合
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LAMP-Apache和PHP的结合相关的知识,希望对你有一定的参考价值。
在LAMP架构中,Apache通过php模块与mysql建立连接,读写数据。那么配置Apache和PHP结合的步骤是怎么操作的呢?
1、修改http.conf文件
[[email protected] ~]# cat /usr/local/apache2.4/conf/httpd.conf ...... #ServerName ...... <Directory /> AllowOverride none Require all denied </Directory> ...... <IfModule dir_module> DirectoryIndex index.html </IfModule> ...... AddType application/x-compress .Z AddType application/x-gzip .gz .tgz ...... [[email protected] ~]# vi /usr/local/apache2.4/conf/httpd.conf ...... ServerName ##取消了注释号 ...... <Directory /> AllowOverride none Require all granted ##更改了denied限制 </Directory> ...... <IfModule dir_module> DirectoryIndex index.html index.php ##增加了“index.php” </IfModule> ...... AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/x-httpd-php .php ##增加了这行 ......
2、检查与启动httpd
[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -t Syntax OK [[email protected] ~]# /usr/local/apache2.4/bin/apachectl start /usr/local/apache2.4/bin/apachectl: 行 79: 57987 段错误 $HTTPD -k $ARGV
启动出错,因为这里有两个php的模块,注释掉一个即可。
[[email protected] ~]# cat /usr/local/apache2.4/conf/httpd.conf | grep -i php #LoadModule php5_module modules/libphp5.so ##这里用php 7 LoadModule php7_module modules/libphp7.so DirectoryIndex index.html index.php AddType application/x-httpd-php .php [[email protected] ~]# /usr/local/apache2.4/bin/apachectl start [[email protected] ~]# /usr/local/apache2.4/bin/apachectl -M | tail -2 alias_module (shared) php7_module (shared)
使用graceful能直接刷新配置,而不重启httpd服务。按ctrl+r能搜索命令历史。
(reverse-i-search)`graceful‘: /usr/local/apache2.4/bin/apachectl graceful
3、修改防火墙
[[email protected] ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT^C [[email protected] ~]# iptables -nvL | grep ‘:80‘ 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 ctstate NEW
4、配置测试页
[[email protected] ~]# vi /usr/local/apache2.4/htdocs/1.php <?php phpinfo(); ?>
5、客户端打开测试页面(ip/1.php)
▎如果客户端解析不出来,可以从以下几方面进行排查:
1)检查php模块是否被加载
[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -M | tail -1 php7_module (shared)
2)检查php模块文件是否存在
[[email protected] ~]# ls /usr/local/apache2.4/modules/libphp* /usr/local/apache2.4/modules/libphp5.so /usr/local/apache2.4/modules/libphp7.so
3)检查配置文件是否正确
[[email protected] ~]# cat /usr/local/apache2.4/conf/httpd.conf | grep ‘php‘ #LoadModule php5_module modules/libphp5.so LoadModule php7_module modules/libphp7.so DirectoryIndex index.html index.php AddType application/x-httpd-php .php
配置文件中,有三条php相关的命令,需要逐一检查。
还可以检查下配置语法是否正确:
[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -t Syntax OK
然后,确认完全无误后,重新尝试打开测试页面。
本文出自 “A man & A computer” 博客,请务必保留此出处http://juispan.blog.51cto.com/943137/1951770
以上是关于LAMP-Apache和PHP的结合的主要内容,如果未能解决你的问题,请参考以下文章
使用 NodeJS 和 JSDOM/jQuery 从代码片段构建 PHP 页面
html PHP代码片段: - AJAX基本示例:此代码演示了使用PHP和JavaScript实现的基本AJAX功能。
结合两个代码片段?将用户输入的 Youtube url 转换为嵌入 url,然后将 iframe src 替换为转换后的 url