ubuntu18.04下的lnmp环境搭建

本文记录了在Ubuntu 18.04系统下搭建LNMP(Nginx, MySQL, PHP)环境的详细步骤,包括更新源、安装Nginx、MySQL和PHP7.2,以及配置Nginx的过程。通过参考他人博客,作者成功避开了部分常见问题,并提醒读者理解Linux基础命令的重要性。" 112238440,10547313,VS Code 中的 Jupyter Notebook 使用指南,"['Python开发', 'VS Code', 'Jupyter', 'IDE']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   最近闲来无事,遂下载了vmware,尝试搭建下lnmp,之前有试过搭建宝塔,lamp等,但最后结果都不怎么好,这次再次尝试搭建linux下的php开发环境,借鉴了很多网友的文章,历经千辛,搭建成功,遂将过程总结总结,分享出来。
   这里是主要参考的两篇博客:

快速搭建lnmp
https://www.cnblogs.com/zhangbobo/p/9597446.html
修改数据库密码
https://www.cnblogs.com/super-zhangkun/p/9435974.html

开始

   更新源 sudo apt-get update

安装nginx

   sudo apt-get install nginx

安装mysql

   sudo apt-get install mysql-server mysql-client
这里会有个问题,有的文章说,安装过程会提示设置密码,然而。。。,这样,你将无法登录mysql,那么就这样放弃了吗?
如下:
   

	cd /etc/mysql
	sudo cat debian.cnf   可以看到账号密码 使用这个账号密码登录mysql
	mysql -u :user -p :password

	use mysql;

	update user set authentication_string=PASSWORD
<think>我们正在回答用户关于在Ubuntu搭建LNMP环境的问题。根据提供的引用,我们需要整合搭建步骤。 注意:引用中提供了多个Ubuntu版本(18.04, 20.04, 22.04)的步骤,但用户没有指定版本。我们将以较新的Ubuntu 22.04为例,同时指出不同版本可能需要注意的地方。 步骤概述: 1. 安装Nginx 2. 安装MySQL 3. 安装PHP 4. 配置Nginx使用PHP处理器 5. 测试配置 6. 防火墙配置 7. 安全建议 详细步骤: 1. 安装Nginx sudo apt update sudo apt install nginx -y sudo systemctl start nginx sudo systemctl enable nginx 2. 安装MySQL sudo apt install mysql-server -y sudo systemctl start mysql sudo systemctl enable mysql 安装后建议运行安全脚本(设置root密码等): sudo mysql_secure_installation 3. 安装PHP 对于Ubuntu 22.04,默认仓库可能提供PHP8.1。但用户可能需要其他版本,可以使用第三方仓库(如ondrej/php): sudo apt install software-properties-common -y sudo add-apt-repository ppa:ondrej/php -y sudo apt update 然后安装所需版本的PHP(例如php8.1-fpm): sudo apt install php8.1-fpm php8.1-mysql php8.1-mbstring php8.1-xml php8.1-gd php8.1-curl -y 注意:如果不需要特定版本,可以直接使用默认仓库安装: sudo apt install php-fpm php-mysql ... 4. 配置Nginx使用PHP处理器 编辑默认的Nginx配置文件(或为你的站点创建新的配置文件): sudo nano /etc/nginx/sites-available/default 在server块中,找到处理PHP的location块,取消注释并修改如下: location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.1-fpm.sock; # 注意版本号,根据实际安装的PHP版本调整 } 同时,确保index行中包含index.php: index index.php index.html index.htm index.nginx-debian.html; 测试配置并重载Nginx: sudo nginx -t sudo systemctl reload nginx 5. 测试配置 创建一个测试PHP文件: sudo echo "<?php phpinfo(); ?>" > /var/www/html/info.php 在浏览器中访问:http://服务器IP/info.php 或使用curl: curl http://localhost/info.php 如果看到PHP信息页面,说明配置成功。 6. 防火墙配置(如果启用了ufw) sudo ufw allow 'Nginx Full' sudo ufw enable 7. 安全建议 测试完成后,删除测试文件: sudo rm /var/www/html/info.php 注意:对于不同Ubuntu版本,步骤可能略有不同: - Ubuntu 18.04:默认PHP版本可能是7.2,安装时指定php7.2-fpm等。 - Ubuntu 20.04:默认PHP版本可能是7.4或8.0。 另外,引用[4]中提到在编译时出现内存不足的问题(g++: internal compiler error: Killed),可以通过创建交换文件解决: sudo dd if=/dev/zero of=/swapfile bs=64M count=16 sudo mkswap /swapfile sudo swapon /swapfile 但通常安装预编译包不会遇到此问题。 根据引用[5],还可以安装一些常用工具: sudo apt install -y git composer unzip 最后,验证服务状态: sudo systemctl status nginx mysql php8.1-fpm 现在,LNMP环境已经搭建完成。 相关问题: 1. 如何为不同的网站配置不同的Nginx虚拟主机? 2. 如何为MySQL设置远程访问? 3. 如何升级PHP版本? 4. 如何保护LNMP环境的安全? 5. 如何安装和配置phpMyAdmin?</think>### Ubuntu系统搭建LNMP环境指南 LNMP环境由Linux、NginxMySQLPHP组成。以下是针对Ubuntu 22.04搭建步骤(其他版本调整软件包版本即可): #### 1. 更新系统 ```bash sudo apt update && sudo apt upgrade -y ``` #### 2. 安装Nginx ```bash sudo apt install nginx -y sudo systemctl start nginx sudo systemctl enable nginx ``` #### 3. 安装MySQL ```bash sudo apt install mysql-server -y sudo systemctl start mysql sudo systemctl enable mysql ``` **安全配置**: ```bash sudo mysql_secure_installation # 按提示设置root密码并移除测试数据库 ``` #### 4. 安装PHP ```bash sudo apt install php-fpm php-mysql php-mbstring php-xml php-gd php-curl -y # 检查PHP版本 php -v ``` > 对于特定PHP版本(如7.4): > ```bash > sudo add-apt-repository ppa:ondrej/php -y > sudo apt install php7.4-fpm php7.4-mysql > ```[^3] #### 5. 配置Nginx支持PHP 编辑默认站点配置: ```bash sudo nano /etc/nginx/sites-available/default ``` 修改内容: ```nginx server { listen 80; server_name _; root /var/www/html; index index.php index.html index.htm; location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.1-fpm.sock; # 版本号需匹配安装版本 } } ``` 验证并重启: ```bash sudo nginx -t sudo systemctl reload nginx ``` #### 6. 测试环境 创建测试文件: ```bash echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php ``` 访问 `http://服务器IP/info.php` 应显示PHP信息页[^5] #### 7. 防火墙配置 ```bash sudo ufw allow 'Nginx Full' sudo ufw enable ``` #### 8. 常见问题解决 - **内存不足错误**:添加交换空间 ```bash sudo dd if=/dev/zero of=/swapfile bs=1G count=2 sudo mkswap /swapfile sudo swapon /swapfile ```[^4] - **服务状态检查**: ```bash sudo systemctl status nginx mysql php*-fpm ``` > **安全提示**:生产环境务必删除测试文件: > ```bash > sudo rm /var/www/html/info.php > ```[^5] --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值