首页主机资讯centos lnmp如何实现多站点托管

centos lnmp如何实现多站点托管

时间2025-10-09 09:36:03发布访客分类主机资讯浏览208
导读:在CentOS上使用LNMP(Linux, Nginx, MySQL, PHP)实现多站点托管,可以通过配置Nginx来实现。以下是一个基本的步骤指南: 1. 安装必要的软件 首先,确保你已经安装了Nginx、MySQL和PHP。如果没有安...

在CentOS上使用LNMP(Linux, Nginx, MySQL, PHP)实现多站点托管,可以通过配置Nginx来实现。以下是一个基本的步骤指南:

1. 安装必要的软件

首先,确保你已经安装了Nginx、MySQL和PHP。如果没有安装,可以使用以下命令进行安装:

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

2. 启动并启用服务

启动Nginx和MySQL服务,并设置它们开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

sudo systemctl start mysqld
sudo systemctl enable mysqld

3. 配置MySQL

登录到MySQL并创建数据库和用户:

sudo mysql -u root -p

在MySQL shell中执行以下命令:

CREATE DATABASE site1;
    
CREATE USER 'site1user'@'localhost' IDENTIFIED BY 'password';
    
GRANT ALL PRIVILEGES ON site1.* TO 'site1user'@'localhost';
    
FLUSH PRIVILEGES;
    
EXIT;

重复上述步骤为其他站点创建数据库和用户。

4. 配置Nginx

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

站点1配置 (/etc/nginx/conf.d/site1.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:/var/run/php-fpm/site1.sock;
    
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    
        include fastcgi_params;

    }


    location ~ /\.ht {
    
        deny all;

    }

}

站点2配置 (/etc/nginx/conf.d/site2.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:/var/run/php-fpm/site2.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. 配置PHP-FPM

为每个站点配置PHP-FPM池。编辑PHP-FPM配置文件:

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

找到并修改以下行:

listen = /var/run/php-fpm/site1.sock
;
    listen = /var/run/php-fpm/site2.sock

然后重启PHP-FPM服务:

sudo systemctl restart php-fpm

7. 测试配置并重启Nginx

测试Nginx配置是否正确:

sudo nginx -t

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

sudo systemctl restart nginx

8. 更新DNS记录

确保你的域名(如 site1.comsite2.com)指向你的服务器IP地址。

9. 创建站点文件

在相应的目录中创建HTML或PHP文件,例如:

echo "Welcome to Site 1" | sudo tee /var/www/site1/index.php
echo "Welcome to Site 2" | sudo tee /var/www/site2/index.php

现在,你应该能够通过访问 http://site1.comhttp://site2.com 来访问你的站点。

通过以上步骤,你可以在CentOS上使用LNMP实现多站点托管。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos lnmp如何实现多站点托管
本文地址: https://pptw.com/jishu/721081.html
centos定时器日志查看 centos lnmp如何实现自动部署

游客 回复需填写必要信息