ubuntu

如何在Ubuntu上利用LNMP实现动态网站

小樊
41
2025-07-03 08:06:51
栏目: 云计算

在Ubuntu上利用LNMP(Linux, Nginx, MySQL, PHP)实现动态网站,可以按照以下步骤进行:

1. 更新系统

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

sudo apt update
sudo apt upgrade

2. 安装Nginx

安装Nginx作为Web服务器。

sudo apt install nginx

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

sudo systemctl start nginx
sudo systemctl enable nginx

3. 安装MySQL

安装MySQL作为数据库服务器。

sudo apt install mysql-server

安装完成后,启动MySQL并设置开机自启动。

sudo systemctl start mysql
sudo systemctl enable mysql

运行安全脚本以提高MySQL的安全性。

sudo mysql_secure_installation

4. 安装PHP

安装PHP及其常用扩展。

sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip

配置PHP-FPM以使用Nginx。 编辑/etc/php/7.4/fpm/pool.d/www.conf文件,找到listen行并修改为:

listen = /run/php/php7.4-fpm.sock

重启PHP-FPM服务。

sudo systemctl restart php7.4-fpm

5. 配置Nginx

编辑Nginx配置文件以支持PHP。

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:/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

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

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

sudo nginx -t

如果配置正确,重新加载Nginx。

sudo systemctl reload nginx

6. 创建网站目录和文件

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

sudo mkdir -p /var/www/html/mywebsite
sudo chown -R www-data:www-data /var/www/html/mywebsite
cd /var/www/html/mywebsite
echo "<?php phpinfo(); ?>" | sudo tee index.php

7. 测试动态网站

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

8. 安装其他必要的软件(可选)

根据你的需求,你可能需要安装其他软件,例如:

9. 配置防火墙(可选)

如果你使用的是UFW(Uncomplicated Firewall),可以配置它以允许HTTP和HTTPS流量。

sudo ufw allow 'Nginx Full'

通过以上步骤,你就可以在Ubuntu上利用LNMP实现一个基本的动态网站。根据具体需求,你可以进一步配置和优化你的服务器。

0
看了该问题的人还看了