Ubuntu搭建LAMP和LNMP环境

随声附和 提交于 2019-11-30 06:31:51

操作环境:Ubuntu 18.04.1

 

搭建LAMP环境:

图形界面配置更新Ubuntu源:在VMware打开Ubuntu,依次打开系统设置,软件和更新。在下载自中选择其他站点,然后在中国的条目下选择mirrors.ustc.edu.cn。

 

更新资源包和软件:sudo apt update&& sudo apt upgrade sudo apt dist-upgrade&&sudo apt autoclean

 

清除不需要的软件和文件:sudo apt autoclean&&sudo apt autoremove

 

安装apache:sudo apt install apache2

默认的配置文件:/etc/apache2/sites-enabled/000-default.conf

默认安装源码的位置(网站根目录):/var/www/html

 

检查apache是否开启:sudo service apache2 status

显示active(running)则表示已开启。

相关命令:

  开启apache:service apache2 start

  关闭apache:service apache2 stop

  重启apache:service apache2 restart

 

检查apache默认使用的80端口是否开启:netstat -ntulp | grep 80       

 端口处于监听状态则证明已经开启。

 

查看虚拟机IP地址:ip add

 

在外部主机打开浏览器,在浏览器输入栏填入虚拟机IP地址进行访问:

 

安装mysql:sudo apt install mysql-server

mqsql配置文件:vim /etc/mysql/mysql.conf.d/mysqld.cnf

 

登录mysql数据库:sudo mysql -u root -p 刚开始没有密码直接回车进入数据库。

 

根据需求进行数据库安全设置:sudo mysql_secure_installation 要安装验证密码插件吗?这里我选否

 

输入要为root管理员设置的数据库密码

  

删除匿名账户

 

禁止root管理员从远程登录,这里我没有禁止

 

删除test数据库并取消对它的访问权限

 

刷新授权表,让初始化后的设定立即生效

 

查看命令查看root用户的plugin是否为mysql_native_password:select user,plugin from mysql.user;

如果不是mysql_native_password,而是auth_socket,则输入下面的命令更改:update mysql.user set authentication_string=PASSWORD(‘你的密码’), plugin=’mysql_native_password’ where user=’root’;

 

检查mysql默认使用的3306端口是否开启:netstat -ntulp | grep 3306

端口处于监听状态则证明已经开启。

 

配置mysql允许远程访问,编辑/etc/mysql/mysql.conf.d/mysqld.cnf 配置文件,将bind-address  =127.0.0.1注释掉:sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

 

进入mysql数据库,执行授权命令:

mysql -u root -p

mysql> grant all on *.* to root@'%' identified by '密码' with grant option;

mysql> flush privileges;    # 刷新权限

mysql> exit

 

重启apache服务器:service apache2 restart

 

外部主机打开Navicat远程连接mysql,测试是否成功:

 

安装php:sudo apt install php

 

测试php是否安装:php -v

 

安装php扩展:sudo apt php-pear libapache2-mod-php php-mysql

 

安装php组件:sudo apt install php-curl php-json php.cgi

 

更改apache配置文件:sudo vim /etc/apache2/mods-enabled/dir.conf

更改前:

 

更改后,首先访问index.php:

 

重新启动apache:sudo service apache restart

 

在/var/www/html目录下创建一个名为index.php的文件,并编写测试代码:sudo vim /var/www/html/index.php

 

在外部主机打开浏览器,在浏览器输入栏填入虚拟机IP地址进行访问:

 

安装phpmyddmin:sudo apt install phpmyadmin

 

安装时根据向导设置和需求设置相应的参数。选择apache2并点击确定:

 

点击是来配置phpmyadmin管理的数据库:

 

指定phpmyadmin向数据库服务器注册时所用的密码:

 

再次确认密码:

 

接下来将/usr/bin/share/phpadmin软链接到/var/www/html/phpMyAdmin:sudo ln -s /usr/share/phpmyadmin /var/www/html/phpMyAdmin

 

接着打开php配置文件json.ini,将第二行的注释前面的分号去掉:sudo vim /etc/php/7.2/mods-available/json.ini

 

接着在外部主机浏览器输入栏输入 虚拟机IP地址/phpMyAdmin 访问:

 

 

 搭建LNMP环境

注意:Ubuntu中已经搭建LAMP环境,在此基础上搭建LNMP环境。

由于apache2和nginx默认使用端口相同,所以需要先关闭apache服务:service apache2 stop

 

安装nginx:sudo apt install nginx

默认的配置文件:/etc/nginx/sites-available/default

 

检查nginx是否开启:sudo service nginx status

显示active(running)则表示已开启。

相关命令:

  开启nginx:service nginx start

  关闭nginx:service nginx stop

  重启nginx:service nginx restart

 

查询nginx是否安装:nginx -v

 

 

编辑nginx配置文件:sudo vim /etc/nginx/sites-available/default

修改解析文件为:

41行 root /var/www; 修改网站根目录为 /var/www(也可以修改为其它的目录)

解析php格式文件:

56行开始  修改为:

    location ~ \.php$ {

            include snippets/fastcgi-php.conf;

            # With php-fpm (or other unix sockets);

            # fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;

            # With php-cgi (or other tcp sockets);

            fastcgi_pass 127.0.0.1:9000;

}

 

重启nginx:service nginx restart

 

 将/var/www/html/index.nginx-debian.html移动到/var/www目录下并重命名:sudo mv /var/www/html/index.nginx-debian.html /var/www/index.html

 

在外部主机浏览器输入栏输入 虚拟机IP地址:

 

 

安装php-fpm:sudo apt install php-fpm

 

 

编辑php配置文件:sudo vim /etc/php/7.2/fpm/pool.d/www.conf

在37行加入如下代码:listen = 127.0.0.1:9000

 

重启php-fpm服务:service php7.2-fpm restart

 

在 /var/www 新建 info.php ,随后 修改文件内容如下:sudo vim /var/www/info.php 

 

 

在外部主机打开浏览器,在浏览器输入栏填入 虚拟机IP地址/info.php进行访问

 

 

测试数据库是否能正常连接,在 /var/www 目录下新建 mysql.php,修改文件内容如下:sudo vim /var/www/mysql.php

 

 

更改/etc/php/7.2/fpm/php.ini文件:sudo vim /etc/php/7.2/fpm/php.ini

 

重启php-fpm服务:service php7.2-fpm restart

 

在外部主机浏览器输入栏输入 虚拟机IP地址/mysql.php

 

 

 

 

参考博客:

Ubuntu18.04下搭建LAMP环境

mysql 普通用户无权限连接问题

phpmyadmin提示The mbstring extension is missing的解决方法

Ubuntu18.04 桌面版 搭建 LNMP 环境

该网页无法正常运作 目前无法处理此请求HTTP ERROR 500

同一台 linux Server同时安装 lamp 和 lnmp

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!