游乐游手机版
首页/编程语言/文章详情

CentOS系统Apache2服务器配置PHP运行环境教程

时间:2026-05-06 18:17
在CentOS上配置Apache2以处理PHP文件 想在CentOS上让Apache2顺畅地跑起PHP?这事儿其实没想象中那么复杂。核心就是安装Apache、PHP以及必要的模块,然后做几个关键配置。下面咱们就一步步来,把这事儿彻底搞定。 1 安装Apache 第一步,得确保你的系统是最新的。打开

在CentOS上配置Apache2以处理PHP文件

想在CentOS上让Apache2顺畅地跑起PHP?这事儿其实没想象中那么复杂。核心就是安装Apache、PHP以及必要的模块,然后做几个关键配置。下面咱们就一步步来,把这事儿彻底搞定。

1. 安装Apache

第一步,得确保你的系统是最新的。打开终端,运行更新命令总是个好习惯:

sudo yum update -y

系统更新完毕,接下来就是安装Apache服务器本身了:

sudo yum install httpd -y

安装完成后,别急着测试。先启动Apache服务,并顺手把它设置为开机自启,这样下次服务器重启就不用再手动操作了:

sudo systemctl start httpd
sudo systemctl enable httpd

2. 安装PHP

Apache就位了,主角PHP该登场了。这里以安装PHP 7.4为例,它会附带一些常用的扩展模块,比如连接MySQL的、处理图像的、解析XML的等等,基本上能满足大多数Web应用的需求:

sudo yum install php php-mysqlnd php-gd php-xml php-mbstring -y

3. 配置Apache以处理PHP文件

好了,现在Apache和PHP都装上了,但两者还没“认识”呢。关键一步就是告诉Apache:“遇到.php结尾的文件,你得交给PHP来处理。” 这通常有两种主流方法。

方法一:编辑主配置文件

直接修改Apache的主配置文件 /etc/httpd/conf/httpd.conf

sudo vi /etc/httpd/conf/httpd.conf

在文件里找到下面这几行(它们可能被注释掉了),把每行开头的 # 号删掉,取消注释即可:

LoadModule php_module modules/libphp.so
AddHandler php-script .php
AddType application/x-httpd-php .php

方法二:创建新的配置文件

如果你不想动主配置文件,更推荐这种方法:在 /etc/httpd/conf.d/ 目录下新建一个专属配置文件。这个目录下的所有.conf文件都会被Apache自动读取。

创建并编辑新文件:

sudo vi /etc/httpd/conf.d/php.conf

然后把上面那三行配置直接加进去就行:

LoadModule php_module modules/libphp.so
AddHandler php-script .php
AddType application/x-httpd-php .php

4. 重启Apache服务

配置改完了,必须重启Apache服务,新的设置才能生效。这是至关重要的一步:

sudo systemctl restart httpd

5. 测试PHP配置

重启没报错?先别高兴太早,得实际验证一下PHP是否真的能工作了。最直接的办法就是创建一个测试页面。

在Apache的默认网站根目录(通常是 /var/www/html)下,创建一个文件:

sudo vi /var/www/html/info.php

文件内容很简单,就调用一个PHP的内置函数:

保存退出。现在,打开你的浏览器,访问 https://你的服务器IP地址/info.php。如果页面上清晰地展示出了PHP的版本、配置模块等详细信息,那么恭喜你,配置成功了!

6. 配置防火墙

最后,可别忘了防火墙这个“门卫”。如果你的服务器启用了防火墙(比如firewalld),需要放行HTTP(80端口)和HTTPS(443端口)的流量,否则外部用户无法访问你的网站。

执行以下命令:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

至此,所有步骤完成。你的CentOS系统上的Apache2已经整装待发,可以完美处理PHP文件了。

来源:https://www.yisu.com/ask/24796130.html
上一篇AppImage文件格式兼容性详解与支持列表 下一篇CentOS系统Apache2服务器PHP环境配置指南
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
如何在Go中安全地创建和使用time.Ticker最佳实践指南
编程语言 · 2026-07-06

如何在Go中安全地创建和使用time.Ticker最佳实践指南

在Go中,time Ticker的创建位置直接影响并发安全。最佳实践是在goroutine外创建或完全限定在单个goroutine内使用,严禁无保护跨goroutine共享。无论采用哪种方式,都必须在使用完毕后调用Stop()释放底层定时器资源,防止goroutine泄露。停止后的Ticker不应再调用Reset以避免竞态。

Go跨文件cgo结构体类型不兼容的解决方案
编程语言 · 2026-07-06

Go跨文件cgo结构体类型不兼容的解决方案

cgo为每个Go包生成独立的C命名空间,导致跨文件使用同一C结构体时类型不兼容。解决方案是在中心包中定义Go封装类型(如typePointC point_t),并将所有构造、访问和业务逻辑封装其中,其他包仅引用Go类型,避免直接暴露C类型。

Go语言有符号整数二进制补码的正确输出方法
编程语言 · 2026-07-06

Go语言有符号整数二进制补码的正确输出方法

Go语言fmt Printf的%b格式对负数输出带负号的绝对值二进制,而非底层补码位模式。需注意,通过将相同位宽的有符号整数转换为无符号类型(例如将int8转为uint8),可获取真实的二进制补码比特序列,如-5输出11111011,即其补码。

Python列表按出现顺序批量替换重复字符串
编程语言 · 2026-07-06

Python列表按出现顺序批量替换重复字符串

Python列表遍历中,使用计数器对重复字符串(如“latest png”)按出现顺序依次替换为带递增编号的新字符串(如“latest1 png”),保持原列表不变。该方法时间复杂度O(n),无需额外库,严格匹配避免误改,不修改原始列表。

Go语言中如何正确读取io.Reader避免重复与内存污染
编程语言 · 2026-07-06

Go语言中如何正确读取io.Reader避免重复与内存污染

Go开发者使用io Reader Read()手动读取HTTP响应体时,因忽略实际读取字节数n和未正确处理io EOF,导致内容重复、空字节污染等问题。必须使用buf[:n]追加有效数据,将io EOF视为正常终止信号,并检查其他错误,从而避免内存污染与panic风险。