(最近在整理 web 后端相关的技术点,顺便记录下来备忘,会持续更新。嗯记笔记是个好习惯简单~)
在 ubuntu18.04 下,搭建 LNMP 开发环境(php7.2、mysql5.7)
1、安装 mysql5.7
不选择 mysql 的安装版本,默认就是最新的 mysql,在这里最新版本是 mysql5.7 。$ sudo apt-get install mysql-server mysql-client
(1)安装过程中,如果提示输入 root 密码,直接设置就行(我的安装过程中没有出现提示);
(2)若安装过程没有提示输入 root 密码,则需要安装完之后,手动重置 root 密码
mysql 5.7 中的 mysql.user 表中已经没有 password 字段,密码字段为 authentication_string ,同时需要将 plugin 字段改为 'mysql_native_password'。
将 root 的密码改为 'root',具体操作如下:$ sudo mysql # 进入 mysql
mysql> use mysql;
mysql> update mysql.user set authentication_string=PASSWORD('root'), plugin='mysql_native_password' where user='root';
mysql>flush privileges;
(3)其他 mysql 版本的修改 root 密码的方法
(4)添加用户以及设置权限
2、安装 nginx$ sudo apt-get install nginx
3、安装 php7.2 及相关扩展$ sudo apt-get install php7.2 php7.2-fpm php7.2-mysql
4、配置 nginx 虚拟主机,配置 php7.2-fpm 以支持解析 PHP
第一种配置方式:
(1)新增虚拟主机配置文件,这里新建的站点为 laravelTest$ cd /etc/nginx/sites-available/
$ sudo cp default laravelTest.conf
$ sudo vi laravelTest.conf
laravelTest.conf 修改如下:
(2)在 /etc/nginx/sites-enabled/ 下建立该配置文件的软连接$ sudo ln -s laravelTest.conf /etc/nginx/sites-enabled/laravelTest.conf
(3)重启 nginx 服务$ sudo service nginx restart
第二种配置方式:
(1)新增虚拟主机配置文件,这里新建站点 laravelTest$ cd /etc/nginx/sites-available/
$ sudo cp default laravelTest.conf
$ sudo vi laravelTest.conf
laravelTest.conf 修改如下:
(2)在 /etc/nginx/sites-enabled/ 下建立该配置文件的软连接$ sudo ln -s laravelTest.conf /etc/nginx/sites-enabled/laravelTest.conf
(3)接下来,需要修改 php 相关配置文件$ sudo vi /etc/php/7.2/fpm/pool.d/www.conf
找到下面的设置项,修改如下:
修改 listen 属性
保存退出之后,重启 php7.2-fpm 服务:$ sudo service php7.2-fpm restart
(4)重启 nginx 服务$ sudo service nginx restart
5、在 /var/www/ 下新建 laravelTest 文件夹和测试 php 文件$ cd /var/www/
$ sudo mkdir laravelTest
$ sudo vi index.php
在新建的 index.php 中输入以下内容,检查 php 是否配置成功:<?php
echo "here is test";
phpinfo();
?>
再新建一个 mysql.php 文件,检查 mysql 是否连接成功<?php echo '
Page loaded with PHP!';
$conn = mysqli_connect('localhost', '你的用户名', '你的密码');
if(!$conn){
die('
Error:
' . mysqli_connect_error());}else{
echo '
Successfully Connected to MySQL Database!
';}
?>
6、在浏览器访问 localhost:8080
index.php 的内容:
mysql.php 的内容:
好了,大功告成,接下来请可以开始你愉悦的编码之旅吧~
以上!