ubuntu

怎样在Ubuntu上配置LNMP虚拟主机

小樊
46
2025-07-29 13:51:32
栏目: 云计算

在Ubuntu上配置LNMP(Linux, Nginx, MySQL/MariaDB, PHP)虚拟主机涉及几个步骤。以下是一个基本的指南:

1. 更新系统

首先,确保你的系统是最新的:

sudo apt update
sudo apt upgrade -y

2. 安装Nginx

安装Nginx服务器:

sudo apt install nginx -y

安装完成后,启动Nginx并设置开机自启动:

sudo systemctl start nginx
sudo systemctl enable nginx

验证Nginx是否安装成功,可以在浏览器中访问服务器的IP地址,如果看到Nginx的默认欢迎页面,则表示安装成功。

3. 安装MySQL/MariaDB

安装MySQL数据库服务器:

sudo apt install mysql-server -y

在安装过程中,系统会提示你设置MySQL的root用户密码,设置好密码后,启动MySQL服务:

sudo systemctl start mysql
sudo systemctl enable mysql

为了提高MySQL的安全性,建议运行安全脚本来设置root密码和其他安全选项:

sudo mysql_secure_installation

4. 安装PHP

安装PHP及其相关扩展:

sudo apt install php-fpm php-mysql -y

根据你的PHP版本,可能需要调整命令中的PHP版本号。例如,如果你使用的是Ubuntu 20.04,可能需要使用 php7.4-fpm 而不是 php7.2-fpm

启动PHP-FPM服务并设置开机自启动:

sudo systemctl start php7.4-fpm  # 根据你的PHP版本调整命令
sudo systemctl enable php7.4-fpm

5. 配置Nginx以支持PHP

编辑Nginx的默认站点配置文件:

sudo nano /etc/nginx/sites-available/default

server 块中添加以下内容:

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  # 根据你的PHP版本调整路径
}

保存并关闭文件,然后重新加载Nginx配置以应用更改:

sudo systemctl reload nginx

6. 配置虚拟主机

创建一个新的Nginx服务器块配置文件:

sudo nano /etc/nginx/sites-available/your_domain.com

添加以下内容,根据你的需求进行修改:

server {
    listen 80;
    server_name your_domain.com www.your_domain.com;
    root /var/www/your_domain.com;
    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/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME document_root $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location /\.ht {
        deny all;
    }
}

保存并退出编辑器。

创建一个符号链接以启用新的服务器块配置:

sudo ln -s /etc/nginx/sites-available/your_domain.com /etc/nginx/sites-enabled/

测试Nginx配置是否正确:

sudo nginx -t

如果没有错误,重新加载Nginx以应用更改:

sudo systemctl reload nginx

7. 创建网站目录

创建你的网站根目录并设置正确的权限:

sudo mkdir -p /var/www/your_domain.com
sudo chown -R www-data:www-data /var/www/your_domain.com

8. 配置防火墙

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

sudo ufw allow 'Nginx Full'

9. 测试你的配置

打开浏览器并访问你的域名,你应该能看到你的网站。

10. 配置SSL(可选)

为了安全起见,建议为你的网站配置SSL证书。你可以使用Let’s Encrypt免费获取SSL证书。

安装Certbot和Nginx插件:

sudo apt install certbot python3-certbot-nginx

运行Certbot以获取并安装SSL证书:

sudo certbot --nginx -d your_domain.com -d www.your_domain.com

按照提示完成配置。

通过以上步骤,你应该能够在Ubuntu上成功配置一个LNMP虚拟主机。

0
看了该问题的人还看了