如何使用Linux LNMP部署网站

在Linux系统上使用LNMP(Linux, Nginx, MySQL/MariaDB, PHP)堆栈部署网站是一个常见的选择,因为它提供了高性能、稳定性和灵活性。以下是一个基本的步骤指南:

1. 安装Nginx

首先,更新你的包列表并安装Nginx:

sudo apt update
sudo apt install nginx

启动Nginx服务并设置开机自启动:

sudo systemctl start nginx
sudo systemctl enable nginx

2. 安装MySQL/MariaDB

安装MySQL或MariaDB:

sudo apt update
sudo apt install mysql-server  # 安装MySQL
# 或者
sudo apt install mariadb-server  # 安装MariaDB

启动MySQL/MariaDB服务并设置开机自启动:

sudo systemctl start mysql
# 或者
sudo systemctl start mariadb
sudo systemctl enable mysql
# 或者
sudo systemctl enable mariadb

运行安全脚本以设置root密码和其他安全选项:

sudo mysql_secure_installation

3. 安装PHP

安装PHP及其常用扩展:

sudo apt update
sudo apt install php-fpm php-mysql

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

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

4. 配置Nginx以使用PHP-FPM

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

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

将以下内容添加到server块中:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;
    index index.php index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
        try_files $uri $uri/ =404;
    }

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

保存并退出编辑器,然后测试Nginx配置:

sudo nginx -t

重新加载Nginx以应用更改:

sudo systemctl reload nginx

5. 创建网站目录和文件

创建一个网站目录并添加一些PHP文件:

sudo mkdir -p /var/www/html/mywebsite
sudo chown -R www-data:www-data /var/www/html/mywebsite

/var/www/html/mywebsite目录下创建一个简单的PHP文件info.php

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/mywebsite/info.php

6. 测试网站

打开浏览器并访问你的服务器IP地址或域名,你应该能看到PHP信息页面。

7. 配置防火墙

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

sudo ufw allow 'Nginx Full'

8. 安装SSL证书(可选)

你可以使用Let’s Encrypt免费获取SSL证书:

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

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

通过以上步骤,你应该能够在Linux系统上成功部署一个使用LNMP堆栈的网站。根据你的具体需求,可能还需要进行更多的配置和优化。

Both comments and pings are currently closed.

Comments are closed.

Powered by KingAbc | 粤ICP备16106647号-2 | Loading Time‌ 0.735