在CentOS系统上部署LAMP(Linux, Apache, MySQL, PHP)环境的流程如下:
准备工作
- 系统要求:确保CentOS系统满足LEMP环境的最低系统要求,包括Linux内核版本2.6.32或更高版本,2GB内存(建议4GB或更高),至少10GB磁盘空间。
- 软件包管理器:确保已经安装了yum(Yellowdog Updater, Modified)。如果没有安装,可以使用以下命令进行安装:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
安装Nginx
- 添加EPEL源:为了安装Nginx,需要先添加EPEL(Extra Packages for Enterprise Linux)源。执行以下命令:
sudo yum install -y epel-release - 安装Nginx:添加完EPEL源后,使用yum命令来安装Nginx:
sudo yum install -y http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm - 启动Nginx并设置开机自启动:
sudo systemctl start nginx sudo systemctl enable nginx
安装MySQL
- 添加MySQL官方仓库:执行以下命令添加MySQL官方仓库:
sudo rpm --import https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm.pems sudo yum localinstall mysql-community-server-8.0.26-1.el7.x86_64.rpm - 启动MySQL并设置开机自启动:
sudo systemctl start mysqld sudo systemctl enable mysqld - 设置MySQL密码:运行以下命令设置root用户的密码:
sudo mysql_secure_installation
安装PHP及其扩展模块
- 安装PHP及其扩展模块依赖库:执行以下命令安装PHP及其扩展模块依赖库:
sudo yum install -y php php-mysql php-fpm php-gd php-xml php-mbstring php-curl php-json php-bcmath php-ldap php-snmp php-soap php-zip php-devel php-pear curl wget zlib-devel pcre-devel libxml2-devel libssl-devel openssl ncurses ncurses-devel bison flex make gd gd-devel libjpeg libpng libtiff freetype freetype-devel fontconfig fontconfig-devel libmcrypt libmcrypt-devel libpq libpq-devel db4.3 db4.3-devel db4.8 db4.8-devel iconv iconv-devel mime_magic mime_magic-devel uuid uuid-devel opcache opcache-devel recode recode-devel xdebug xdebug-devel tokenizer tokenizer_bison tokenizer_brute tokenizer_csv tokenizer_executable tokenizer_flex tokenizer_groff tokenizer_jelly tokenizer_php tokenizer_sqltokenizer tokenizer_symfony tokenizer_yacc tokenizer_yaml xmlrpc xmlrpc-c xmlrpc-e xmlrpc-intl xmlrpc-wsse xmlrpcs xmlrpcs-c xmlrpcs-db xmlrpcs-intl xmlrpcs-msgpack xmlrpcs-perl xmlrpcs-wddx xmlrpcsd xmlrpcss soap soapclient soapcppir soapext soaphttp soapint soapparser soappierce soapReflection soapserver soaptestserver zip unzip zipunrar bzip2 bzip2 bzip2
配置防火墙
- 关闭firewalld并启用iptables:
sudo systemctl stop firewalld.service sudo systemctl disable firewalld.service sudo yum install iptables-services sudo vi /etc/sysconfig/iptables # 编辑防火墙配置文件,允许HTTP(80)和HTTPS(443)端口的访问 sudo systemctl restart iptables.service sudo systemctl enable iptables.service
验证安装
- 检查Apache安装:在浏览器中输入服务器的IP地址,如果看到"It works!"页面,则表示Apache安装成功。
- 检查MySQL安装:登录MySQL并执行以下命令检查版本:
mysql -u root -p - 检查PHP安装:创建一个PHP测试文件,例如
/var/www/html/info.php,内容如下:<?php phpinfo(); ?>在浏览器中访问服务器的IP地址,如果能看到PHP信息页面,则表示PHP安装成功。
以上步骤涵盖了在CentOS系统上部署LAMP环境的基本流程,包括安装和配置Apache、MySQL、PHP以及配置防火墙等。根据具体需求,可能还需要进行进一步的优化和安全设置。