怎样在centos安装lnmp
导读:一、安装前准备 更新系统:运行sudo yum update -y,确保系统软件包为最新版本,避免兼容性问题。 安装必要工具:执行sudo yum install -y wget epel-release,安装wget(用于下载文件)和e...
一、安装前准备
- 更新系统:运行
sudo yum update -y,确保系统软件包为最新版本,避免兼容性问题。 - 安装必要工具:执行
sudo yum install -y wget epel-release,安装wget(用于下载文件)和epel-release(Extra Packages for Enterprise Linux,提供额外软件包)。
二、安装Nginx(Web服务器)
- 安装Nginx:运行
sudo yum install -y nginx,从EPEL仓库安装Nginx。 - 启动并设置开机自启:执行
sudo systemctl start nginx启动Nginx,sudo systemctl enable nginx设置开机自动启动。 - 验证安装:在浏览器输入服务器IP地址,若看到Nginx默认欢迎页面(如“Welcome to nginx!”),则说明安装成功。
- 配置防火墙:若启用了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 ```。
三、安装MySQL/MariaDB(数据库)
- 安装MariaDB(推荐):
- 运行
sudo yum install -y mariadb-server mariadb,安装MariaDB(MySQL的兼容分支,更适合CentOS)。 - 启动服务并设置开机自启:
sudo systemctl start mariadb、sudo systemctl enable mariadb。 - 安全配置:执行
sudo mysql_secure_installation,按提示设置root密码(替换临时密码)、删除匿名用户、禁止root远程登录、删除测试数据库。
- 运行
- (可选)安装MySQL官方版本:
- 添加MySQL YUM仓库:下载并安装官方仓库包(如
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm,sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm)。 - 安装MySQL:
sudo yum install -y mysql-community-server。 - 后续步骤与MariaDB一致(启动服务、安全配置)。
- 添加MySQL YUM仓库:下载并安装官方仓库包(如
四、安装PHP(服务器端脚本语言)
- 安装PHP及常用扩展:
- 运行
sudo yum install -y php php-fpm php-mysqlnd php-gd php-xml php-mbstring php-curl php-zip,安装PHP核心、PHP-FPM(FastCGI进程管理器,用于与Nginx通信)及常用扩展(如MySQL数据库支持、GD图像处理、XML解析等)。 - (可选)安装特定版本PHP:若需PHP 7.4/8.0等版本,可先启用Remi仓库(
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm),再运行sudo yum install -y php74 php74-php-fpm php74-php-mysqlnd(以PHP 7.4为例)。
- 运行
- 配置PHP-FPM:
- 编辑PHP-FPM配置文件(
/etc/php-fpm.d/www.conf),找到user = apache和group = apache,将其修改为user = nginx、group = nginx(匹配Nginx用户,避免权限问题)。 - 启动PHP-FPM并设置开机自启:
sudo systemctl start php-fpm、sudo systemctl enable php-fpm。
- 编辑PHP-FPM配置文件(
五、配置Nginx支持PHP
- 修改Nginx配置文件:
- 编辑默认站点配置文件(
/etc/nginx/conf.d/default.conf),在server块中添加以下内容(用于处理PHP请求):location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; # PHP-FPM socket路径(默认) fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 脚本文件路径 include fastcgi_params; # 包含通用FastCGI参数 } ```。
- 编辑默认站点配置文件(
- 测试Nginx配置:运行
sudo nginx -t,若输出“syntax is ok”和“test is successful”,则说明配置正确。 - 重载Nginx:执行
sudo systemctl reload nginx,使配置生效。
六、测试LNMP环境
- 创建PHP测试文件:运行
echo "< ?php phpinfo(); ?> " | sudo tee /var/www/html/info.php,在Web根目录(/var/www/html)下创建info.php文件。 - 验证PHP运行:在浏览器输入
http://your_server_ip/info.php,若看到PHP信息页面(包含PHP版本、模块加载情况等),则说明LNMP环境搭建成功。
七、安全加固(可选但推荐)
- 配置防火墙:确保firewalld仅允许必要端口(如HTTP 80、HTTPS 443),关闭其他不必要的端口。
- 禁用SELinux(可选):若遇到权限问题,可临时禁用SELinux(
sudo setenforce 0),或修改/etc/selinux/config文件(将SELINUX=enforcing改为SELINUX=permissive),然后重启服务器。 - 定期更新:定期运行
sudo yum update -y,更新系统和软件包,修复安全漏洞。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 怎样在centos安装lnmp
本文地址: https://pptw.com/jishu/743945.html
