在Ubuntu上利用LNMP(Linux, Nginx, MySQL, PHP)实现动态网站,可以按照以下步骤进行:
首先,确保你的Ubuntu系统是最新的。
sudo apt update
sudo apt upgrade
安装Nginx作为Web服务器。
sudo apt install nginx
安装完成后,启动Nginx并设置开机自启动。
sudo systemctl start nginx
sudo systemctl enable nginx
安装MySQL作为数据库服务器。
sudo apt install mysql-server
安装完成后,启动MySQL并设置开机自启动。
sudo systemctl start mysql
sudo systemctl enable mysql
运行安全脚本以提高MySQL的安全性。
sudo mysql_secure_installation
安装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
编辑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
创建一个网站目录并添加一些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
打开浏览器,访问你的服务器IP地址或域名,你应该能看到PHP信息页面。
根据你的需求,你可能需要安装其他软件,例如:
如果你使用的是UFW(Uncomplicated Firewall),可以配置它以允许HTTP和HTTPS流量。
sudo ufw allow 'Nginx Full'
通过以上步骤,你就可以在Ubuntu上利用LNMP实现一个基本的动态网站。根据具体需求,你可以进一步配置和优化你的服务器。