LNMP(Linux + Nginx + MySQL + PHP)是动态网站开发的经典环境组合,以下是在Ubuntu系统上的详细安装流程:
在安装任何组件前,需确保系统软件包为最新版本,避免兼容性问题:
sudo apt update && sudo apt upgrade -y
Nginx作为轻量级、高性能的Web服务器,负责处理HTTP请求:
sudo apt install nginx -y
安装完成后,启动Nginx并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
验证安装:在浏览器访问服务器IP地址,若看到Nginx默认欢迎页面(如“Welcome to nginx!”),则说明安装成功。
MySQL用于存储网站数据(如用户信息、文章内容等):
sudo apt install mysql-server -y
安装过程中,系统会提示设置root用户密码(请务必使用强密码,包含大小写字母、数字和特殊字符)。
启动MySQL并设置开机自启:
sudo systemctl start mysql
sudo systemctl enable mysql
安全加固:运行MySQL安全脚本,修改root密码、移除匿名用户、禁止远程root登录等:
sudo mysql_secure_installation
按照提示逐步操作(如输入当前root密码、设置新密码、移除匿名用户、禁止root远程登录、移除测试数据库等)。
PHP用于处理动态页面逻辑(如表单提交、数据库交互),需安装PHP核心及常用扩展:
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
php-fpm:PHP FastCGI进程管理器,用于与Nginx通信;php-mysql:PHP连接MySQL数据库的扩展;php-curl、php-gd)为常用功能提供支持(如图片处理、HTTPS请求)。启动PHP-FPM并设置开机自启:
sudo systemctl start php7.4-fpm # Ubuntu 22.04默认PHP版本为7.4,24.04可能为8.1,请根据实际情况调整
sudo systemctl enable php7.4-fpm
需修改Nginx配置文件,使其能解析PHP文件(将请求转发给PHP-FPM处理):
sudo nano /etc/nginx/sites-available/default
找到server块,修改或添加以下内容(重点关注location ~ \.php$部分):
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html; # 网站根目录
index index.php index.html index.htm; # 默认索引文件(优先加载PHP文件)
server_name _; # 监听所有域名
location / {
try_files $uri $uri/ =404; # 尝试匹配文件,不存在则返回404
}
# PHP处理配置
location ~ \.php$ {
include snippets/fastcgi-php.conf; # 引入FastCGI配置
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 指向PHP-FPM套接字(版本需与安装的一致)
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 传递脚本路径
include fastcgi_params; # 包含通用FastCGI参数
}
}
保存并退出编辑器(Ctrl+O→Enter→Ctrl+X),测试Nginx配置是否正确:
sudo nginx -t
若输出syntax is ok和test is successful,则重新加载Nginx以应用更改:
sudo systemctl reload nginx
在网站根目录(/var/www/html)创建PHP测试文件,验证PHP是否能正常运行:
sudo nano /var/www/html/info.php
添加以下内容:
<?php
phpinfo();
?>
保存并退出,然后在浏览器访问http://your_server_ip/info.php(将your_server_ip替换为服务器实际IP)。若看到PHP信息页面(包含PHP版本、扩展列表等),则说明LNMP环境搭建成功。
ufw防火墙,运行:sudo ufw allow 'Nginx Full'
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
phpMyAdmin(Web界面)或MySQL Workbench管理MySQL数据库(需额外安装)。以上步骤覆盖了Ubuntu系统上LNMP环境的基础安装与验证,可根据实际需求(如安装MariaDB替代MySQL、调整PHP版本、配置HTTPS等)进行扩展。