在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
检查Nginx状态:
sudo systemctl status nginx
安装MySQL作为数据库服务器。
sudo apt install mysql-server
安装完成后,运行安全设置脚本以提高安全性。
sudo mysql_secure_installation
按照提示设置root密码,删除匿名用户,禁止root远程登录等。
安装PHP及其常用扩展。
sudo apt install php-fpm php-mysql
启动PHP-FPM并设置开机自启动。
sudo systemctl start php7.4-fpm
sudo systemctl enable php7.4-fpm
配置Nginx以使用PHP-FPM处理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;
}
...
}
保存并退出编辑器,然后测试Nginx配置并重启Nginx。
sudo nginx -t
sudo systemctl restart nginx
创建一个PHP文件来测试你的LNMP环境。
sudo nano /var/www/html/info.php
添加以下内容:
<?php
phpinfo();
?>
保存并退出编辑器,然后在浏览器中访问你的服务器IP地址或域名,加上/info.php
,例如:
http://your_server_ip/info.php
你应该能看到PHP信息页面,这表明你的LNMP环境已经成功搭建。
如果你使用的是UFW(Uncomplicated Firewall),可以配置它以允许HTTP和HTTPS流量。
sudo ufw allow 'Nginx Full'
为了安全起见,建议安装SSL证书。你可以使用Let’s Encrypt免费获取SSL证书。
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your_domain.com
按照提示完成SSL证书的安装和配置。
通过以上步骤,你应该能够在Ubuntu上成功搭建一个基本的LNMP服务器。根据你的具体需求,你可能还需要进行更多的配置和优化。