centos

centos lnmp如何配置多站点

小樊
33
2025-07-14 22:20:58
栏目: 智能运维

在CentOS上配置LNMP(Linux, Nginx, MySQL, PHP)多站点主要涉及以下几个步骤:

1. 安装必要的软件

首先,确保你已经安装了Nginx、MySQL和PHP。你可以使用以下命令来安装这些软件:

sudo yum install epel-release
sudo yum install nginx mysql-server php-fpm php-mysqlnd

2. 配置MySQL

启动并启用MySQL服务:

sudo systemctl start mysqld
sudo systemctl enable mysqld

运行MySQL安全脚本:

sudo mysql_secure_installation

按照提示设置root密码和其他安全选项。

3. 配置PHP-FPM

编辑PHP-FPM配置文件:

sudo vi /etc/php-fpm.d/www.conf

确保以下行没有被注释掉:

listen = /run/php-fpm/www.sock
listen.owner = nginx
listen.group = nginx

重启PHP-FPM服务:

sudo systemctl restart php-fpm

4. 配置Nginx

为每个站点创建一个Nginx配置文件。假设你有两个站点:site1.comsite2.com

站点1配置 (/etc/nginx/conf.d/site1.com.conf)

server {
    listen 80;
    server_name site1.com www.site1.com;

    root /var/www/site1;
    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;
    }

    location ~ /\.ht {
        deny all;
    }
}

站点2配置 (/etc/nginx/conf.d/site2.com.conf)

server {
    listen 80;
    server_name site2.com www.site2.com;

    root /var/www/site2;
    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;
    }

    location ~ /\.ht {
        deny all;
    }
}

5. 创建站点目录

创建每个站点的根目录并设置适当的权限:

sudo mkdir -p /var/www/site1
sudo mkdir -p /var/www/site2

sudo chown -R nginx:nginx /var/www/site1
sudo chown -R nginx:nginx /var/www/site2

6. 配置DNS

确保你的域名(例如 site1.comsite2.com)已经指向你的服务器IP地址。你可以通过编辑DNS记录来实现这一点。

7. 测试配置并重启Nginx

测试Nginx配置是否正确:

sudo nginx -t

如果没有错误,重启Nginx服务:

sudo systemctl restart nginx

8. 配置防火墙

确保防火墙允许HTTP和HTTPS流量:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

9. 安装SSL证书(可选)

如果你需要SSL证书,可以使用Let’s Encrypt来安装:

sudo yum install certbot python2-certbot-nginx
sudo certbot --nginx -d site1.com -d www.site1.com
sudo certbot --nginx -d site2.com -d www.site2.com

按照提示完成SSL证书的安装和配置。

完成以上步骤后,你的CentOS服务器上应该已经成功配置了多个LNMP站点。

0
看了该问题的人还看了