
前期准备
(一)确认系统信息
在开始搭建之前,需要先了解服务器所使用的操作系统类型及版本,常见的如CentOS、Ubuntu等Linux发行版,可以通过命令uname -a来查看详细的系统信息,包括内核版本等内容,这将有助于后续选择合适的软件包管理工具以及对应的安装方式。
| 操作系统 | 常用软件包管理工具 | 示例命令格式 |
|---|---|---|
| CentOS | yum | yum install [package_name] |
| Ubuntu/Debian | apt-get | apt-get install [package_name] |
(二)更新系统软件源
为确保能获取到最新稳定的软件组件,建议首先更新系统的软件源缓存,对于基于yum的系统(如CentOS),可执行yum update -y;而对于使用apt系列的系统(像Ubuntu),则运行apt-get update,此操作会同步本地的软件包索引与远程仓库的数据,保证后续安装的是可用且较新的版本。
安装Web服务器(以Apache为例)
(一)安装Apache HTTP服务器
- CentOS系统:使用
yum install httpd -y命令进行安装,该命令会自动解决依赖关系并完成Apache服务的部署,安装完成后,通过systemctl start httpd启动服务,并用systemctl enable httpd设置开机自启。 - Ubuntu系统:对应的命令是
apt-get install apache2 -y,同样地,启动和启用服务分别使用service apache2 start与systemctl enable apache2。
(二)配置防火墙放行端口
默认情况下,防火墙可能会阻止外部对Web服务的访问,通常HTTP服务使用的是80端口(HTTPS为443),以下是开放80端口的方法:
- CentOS:
firewall-cmd --zone=public --add-port=80/tcp --permanent,然后重载防火墙规则firewall-cmd --reload。 - Ubuntu:
ufw allow 80/tcp。
可以通过浏览器输入服务器公网IP地址来验证是否成功安装并运行了Apache服务器,如果看到“It works!”页面,则表示这部分配置正确。

安装PHP解释器
(一)添加EPEL存储库(针对CentOS)
由于官方源中的PHP版本可能不是最新的,我们可以添加Extra Packages for Enterprise Linux (EPEL)仓库来获得更多选择,执行以下命令添加EPEL源:
yum install epel-release -y
(二)安装PHP及其扩展模块
- CentOS:使用
yum install php php-mysqlnd php-gd php-mbstring php-xmlrpc php-soap php-bcmath -y一次性安装主程序以及一些常用的扩展模块。php-mysqlnd用于支持MySQL数据库连接,php-gd处理图像相关功能等。 - Ubuntu:相应的命令为
apt-get install php libapache2-mod-php php-mysql php-gd php-mbstring php-xmlrpc php-soap php-bcmath -y,这里额外安装了libapache2-mod-php以便让Apache能够解析PHP代码。
安装完毕后,重启Apache使新安装的PHP模块生效:
- CentOS:
systemctl restart httpd - Ubuntu:
service apache2 restart
再次创建一个简单的PHP测试文件(例如info.php如下:
<?php phpinfo(); ?>
将其放置在Apache默认文档根目录下(一般是/var/www/html/),然后在浏览器中访问该文件路径,若能正常显示PHP的配置信息页面,说明PHP已成功集成到Web服务器中。

配置虚拟主机(可选)
当有多个域名指向同一台服务器时,可以通过配置虚拟主机实现不同站点间的隔离,以下是一个简单的基于名称的虚拟主机配置示例(适用于Apache):
编辑配置文件(路径可能因系统而异,常见于/etc/httpd/conf/httpd.conf或/etc/apache2/sites-available/000-default.conf):
<VirtualHost :80>
ServerName www.example1.com
DocumentRoot "/var/www/html/site1"
ErrorLog logs/example1_error.log
</VirtualHost>
<VirtualHost :80>
ServerName www.example2.com
DocumentRoot "/var/www/html/site2"
ErrorLog logs/example2_error.log
</VirtualHost>保存修改后,重新加载Apache配置:
- CentOS:
apachectl configtest && systemctl restart httpd - Ubuntu:
apachectl configtest && service apache2 restart
相关问题与解答
问题1:如何更改PHP的时间戳时区设置?
解答:要更改PHP的时间戳时区,可以在PHP配置文件(通常是/etc/php.ini)中找到date.timezone指令并进行修改,若要设置为上海时区,可将该行改为date.timezone = Asia/Shanghai,修改完成后,记得重启Web服务器使更改生效,也可以在单个脚本中使用date_default_timezone_set('Asia/Shanghai');函数临时改变当前脚本内的时区设置。
问题2:为什么访问PHP页面出现下载而不是解析执行?
解答:出现这种情况可能是由于以下几个原因导致的:一是Apache没有正确加载PHP模块,检查Apache配置文件中是否有类似LoadModule php_module modules/libphp7.so这样的加载语句;二是文件扩展名不正确,确保你的PHP文件是以.php三是权限问题,确认Web服务器用户对PHP文件所在目录有足够的读取权限,针对这些问题逐一排查即可解决问题
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/313690.html<
