在CentOS上安装和配置LNMP(Linux, Nginx, MySQL/MariaDB, PHP)环境,可以按照以下步骤进行:
首先,确保你的系统是最新的:
sudo yum update -y
添加EPEL仓库(如果尚未添加):
sudo yum install epel-release -y
安装Nginx:
sudo yum install nginx -y
启动Nginx并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
检查Nginx状态:
sudo systemctl status nginx
安装MariaDB:
sudo yum install mariadb-server mariadb -y
启动MariaDB并设置开机自启:
sudo systemctl start mariadb
sudo systemctl enable mariadb
运行安全脚本以提高安全性:
sudo mysql_secure_installation
如果你更喜欢使用MySQL,可以按照以下步骤进行:
添加MySQL仓库:
wget -O /etc/yum.repos.d/mysql-community.repo https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
安装MySQL:
sudo yum install mysql-community-server -y
启动MySQL并设置开机自启:
sudo systemctl start mysqld
sudo systemctl enable mysqld
运行安全脚本以提高安全性:
sudo mysql_secure_installation
安装PHP及其常用扩展:
sudo yum install php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-pear php-bcmath -y
配置PHP-FPM:
编辑/etc/php-fpm.d/www.conf文件,确保以下配置:
user = apache
group = apache
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
启动PHP-FPM并设置开机自启:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
配置Nginx以使用PHP-FPM:
编辑Nginx配置文件(通常位于/etc/nginx/conf.d/default.conf),添加以下内容:
server {
listen 80;
server_name your_domain_or_ip;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
重新加载Nginx配置:
sudo systemctl reload nginx
创建一个PHP文件来测试安装是否成功:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
然后在浏览器中访问http://your_domain_or_ip/info.php,你应该能看到PHP信息页面。
如果你使用的是firewalld,可以开放HTTP和HTTPS端口:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
完成以上步骤后,你就成功在CentOS上安装并配置了LNMP环境。