在CentOS系统上安装和配置PHP与Apache服务器是许多Web开发人员和系统管理员的常见任务,以下是一个详细的步骤指南,帮助你完成这一过程。
更换阿里云YUM源
为了加快软件包的下载速度,建议更换为阿里云的YUM源。
curl o /etc/yum.repos.d/CentOSBase.repo http://mirrors.aliyun.com/repo/Centos7.repo yum update
安装和配置Apache
1. 安装Apache
检查是否已经安装了Apache:
rpm qa | grep httpd
如果没有安装,可以使用以下命令进行安装:
yum install y httpd
2. 启动Apache服务
安装完成后,启动Apache服务:
systemctl start httpd.service
检查Apache服务状态:
systemctl status httpd.service
3. 设置Apache服务自启动
为了使Apache在系统重启后自动启动,执行以下命令:
systemctl enable httpd.service
访问服务器的80端口,应可以看到Apache的默认页,如果不能访问,请检查防火墙设置。
安装和配置MySQL
1. 安装MySQL及服务器
安装wget工具(如果尚未安装):
yum install wget y
下载并安装MySQL:
wget i c http://dev.mysql.com/get/mysql57communityreleaseel710.noarch.rpm yum localinstall mysql57communityreleaseel710.noarch.rpm yum install mysqlcommunityserver y
2. 启动MySQL服务
安装完成后,启动MySQL服务:
systemctl start mysqld.service
检查MySQL服务状态:
systemctl status mysqld.service
3. 获取初始随机密码并登录MySQL
获取MySQL初始随机密码:
grep "password" /var/log/mysqld.log
使用该密码进入数据库:
mysql uroot p
修改默认密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
4. 新增最高权限用户
创建一个新用户并赋予其最高权限:
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password'; GRANT ALL ON *.* TO 'newuser'@'%'; FLUSH PRIVILEGES;
至此,MySQL安装和基本配置完成。
安装和配置PHP
1. 安装EPEL源和Remi源
安装EPEL源:
yum install y epelrelease
安装Remi源:
yum install y http://rpms.remirepo.net/enterprise/remirelease7.rpm
2. 安装PHP及其常用扩展
安装PHP 7.4及其常用扩展:
yum install y php phpfpm phpcli phpcommon phpdevel phpmbstring phpmysqlnd phpopcache phpgd phpjson phpxml phpxmlrpc phppeclzip phppeclcrypto phppeclmcrypt phpsoap curl curldevel
3. 重启Apache和MySQL服务
为了使PHP相关插件生效,重启Apache和MySQL服务:
systemctl restart httpd.service systemctl restart mysqld.service
4. 验证PHP版本
验证PHP是否安装成功:
php v
5. 测试PHP是否正常工作
在/var/www/html
目录下创建一个新的PHP文件info.php
:
cd /var/www/html vi info.php
在文件中输入以下内容:
<?php phpinfo(); ?>
保存并退出编辑器,然后在浏览器中访问http://你的服务器IP/info.php
,如果看到PHP信息页面,则说明PHP安装成功。
配置Apache支持PHP
1. 修改Apache配置文件
编辑Apache的配置文件/etc/httpd/conf/httpd.conf
,添加以下内容以支持PHP文件解析:
添加PHP支持 AddType application/xhttpdphp .php .phtml DirectoryIndex index.php index.html index.htm
保存并退出编辑器,然后重新启动Apache服务:
systemctl restart httpd.service
安全性配置
1. 关闭Apache的目录索引权限
编辑Apache的配置文件/etc/httpd/conf/httpd.conf
,去除<Directory /var/www/html>
下Options
的Indexes
属性:
<Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
2. 关闭PHP错误提示
编辑PHP配置文件/etc/php.ini
,将display_errors
选项设置为Off
:
display_errors = Off
保存并退出编辑器,然后重新启动Apache服务:
systemctl restart httpd.service
至此,你已经成功在CentOS系统上安装了Apache、PHP和MySQL,并进行了基本的配置和安全设置,你可以将PHP代码上传到/var/www/html
目录下进行进一步的开发和测试。