Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP
1.安装 Apache
$ sudo apt update && sudo apt install apache2
中间会遇到停顿询问是否继续, 输入 y 然后 回车.
2.测试 Apache
通过查看 Apache 服务的状态,检查 Apache 是否安装正确.
$ sudo service apache2 status
查看完状态, 你需要按下 q 退出, Apache server的状态.
查看之后,知道Apache的服务已经起来了,那么下一步应该去查看一些Apache web页面.
输入 IP 地址到浏览器的地址栏然后回车就会看到.
如果你不知道自己的 IP地址是多少,那么你可以通过下面的命令查看:
$ sudo ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1'
当你在浏览器看到上面页面的时候说明已经搞定了.你所看到的页面就是文件
/var/www/html/index.html
如果你想修改页面,直接修改它 /var/www/html/index.html 就行.
3.安装 MySQL
$ sudo apt update && sudo apt install mysql-server
输入 y 然后 回车继续.
安装完成后,我们查看MySQL服务有没有起来.
$ sudo service mysql status
如果起来,你将会看到激活的状态如下:
你可能需要按 q 退查看服务状态,也可能不需要.(我这里不需要)
4.配置 MySQL 安全
为了MySQL 服务器的安全配置,你应该运行 mysql_secure_installation
$ sudo mysql_secure_installation
如果你在步骤 1 创建了root 用户的密码, 可能会提示你在这里输入.否则, 你将被要求创建一个.
你将被问及是否要设置验证密码插件。
除非出于某种原因需要强制执行严格的密码策略,否则没有必要这样做。
到上面这幅图, 这里按下回车就行了,如果你不想设置验证密码插件.
按下回车后会出现如下情况:
如果你没有在步骤1创建root用户的密码,那么你必须现在在这里创建一个.
注意,当您在Linux中输入密码时,不会显示您正在输入的内容(没有星号或圆点)。
输入 y 且按 Enter 键移除匿名用户.
输入 y 且按 Enter 键不运行 root 用户远程登录.这将防止机器人和黑客试图猜测 root 用户密码。
输入 y 且按 Enter 键去移除测试用的数据库.
输入 y 且按 Enter 键去重新加载特权表.
然后,完成.
作为测试,你可以登录到MySQL服务器并运行version命令.
$ sudo mysqladmin -p -u root version
我这里第一个密码是切换到root用户密码, 第二个密码是刚设置的 MySQL的根密码.
输入之前设置的MySQL根密码,应该会看到以下内容:
现在已经成功安装和配置了MySQL!
5.安装 PHP
让我们从更新存储库和使用apt安装PHP包开始。我们还将安装另外两个包libapache2-mod-php和PHP - MySQL,它们允许PHP与MySQL数据库通信.
$ sudo apt update && sudo apt install php libapache2-mod-php php-mysql
当提示安装PHP包时,按 y 并回车.
6.测试 PHP
一旦包完成安装,我们就可以在命令行中测试PHP了。
$ php -version
如果PHP安装正确,你应该看到类似如下:
非常棒,现在,让我们测试用于Apache的PHP.
在文档根目录中创建一个名为info.php的新文件
Ubuntu 18.04中默认的文档根目录是 /var/www/html/
一旦确定了文档根目录的位置,就可以使用 vi 或 vim 或 gedit 或 其他的文本编辑器创建一个名为info.php的新文件。(如果用不惯 vi, 建议使用可视化文本编辑器 gedit)
在本例中,我们将在/var/www/html/中创建一个新文件
$ sudo vi /var/www/html/info.php
写入 info.php 的内容如下:
<?php
phpinfo();
?>
即如下图
然后保存退出.
现在我们可以在浏览器中加载这个文件,通过在浏览器中输入:
http://your_ip/info.php
我这里是 192.168.1.10 所以我在浏览器中输入的是 http://192.168.1.10/info.php
如果你不知道自己的 IP是多少,你可以通过下面的命令知道:
$ sudo ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1'
下面我们可以看到PHP信息页面工作正常。
一旦您确认PHP工作正常,删除info.php是很重要的,因为它包含可能对黑客有用的信息。
$ sudo rm /var/www/html/info.php
如果还想安装 phpMyAdmin 那么请继续查看: Ubuntu 18.04上安装 phpMyAdmin
参考: Installing Apache, MySQL, PHP (LAMP) Stack on Ubuntu 18.04
Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP的更多相关文章
- 如何在Ubuntu 18.04上安装Apache Web服务器
一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...
- Ubuntu 18.04上安装 phpMyAdmin
我们将安装 phpMyAdmin 在 Ubuntu18.04 上配合 Apache 一起工作. 在安装 phpMyAdmin 之前需要已经安装了LAMP栈并提供了web页面. 如果没有安装可以参照 U ...
- 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)
如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...
- 如何在Ubuntu 18.04上安装Django
Django是一个免费的开源高级Python Web框架,旨在帮助开发人员构建安全,可扩展和可维护的Web应用程序. 根据您的需要,有不同的方法来安装Django.它可以使用pip在系统范围内安装或在 ...
- 如何在Ubuntu 18.04上安装Pip
一.简介: Pip是一个软件包管理系统,它简化了用Python编写的软件包(如Python包索引(PyPI)中的软件包)的安装和管理. 在Ubuntu 18.04上缺省没有安装Pip,但安装非常简单. ...
- 在Ubuntu 18.04上安装Tensorflow
我们将经历几个阶段,安装cuda-9.0,cudnn和tensorflow cpu以及tensorflow gpu版本.最后我们将用cuda-9.0安装pytorch.在MARVEl电影中黑寡妇的“我 ...
- 如何在Ubuntu 18.04上安装Go
如何在Ubuntu 18.04上安装Go 谢鸢发表于云计算教程系列订阅98 介绍 课程准备 第1步 - 安装Go 第2步 - 设置Go路径 第3步 - 测试您的安装 结论 介绍 Go是Google开发 ...
- 在Ubuntu 18.04上安装OpenCV 4(C ++和Python)
OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0.这些版本中有很多错误修复和其他更改.发布重点如下: OpenCV现在是C ++ 11库,需要符合C ++ 11标准的 ...
- 在Ubuntu 18.04上安装Git
步骤1.首先,通过运行以下命令确保您的系统和apt包列表完全更新: apt-get update -yapt-get upgrade -y 第2步.在Ubuntu 18.04上安装Git. 现在让我们 ...
随机推荐
- Ubuntu18.04安装配置
GPT硬盘安装Ubuntu 磁盘管理工具压缩一个5GB的Fat32的分区,然后将ISO文件解压到Fat32分区 利用Hasleo EasyUEFI工具添加EFI引导 *:\EFI\BOOT\grubx ...
- python,adb,分别给多个设备安装多个apk文件,os.popen(); os.system; os.path.splitext(); a.split(' \t'); readlines(); append(); os.path.join(); time.sleep();
#encoding:utf-8import os,time#=======================查找手机设备序列号=============a='adb devices'b=os.popen ...
- .gclient文件
//注意以.开头的文件名在linux下都是隐藏文件,需要使用ll 或者ls -all 才可以查看. .gclient文件必须有,否则会报类似下面的错误: Traceback (most recent ...
- LeetCode 动态规划
动态规划:适用于子问题不是独立的情况,也就是各子问题包含子子问题,若用分治算法,则会做很多不必要的工作,重复的求解子问题,动态规划对每个子子问题,只求解一次将其结果保存在一张表中,从而避免重复计算. ...
- 正睿暑期培训day3考试
链接 A 可以发现一个小棍的贡献是使得左右两列上的球位置互换.所以只要找出哪两个球会经过当前位置,然后swap一下就行了.. 考场上调了2.5h,依然没过样例.赛后发现忘了排序!!!!... /* * ...
- 第02组 Beta冲刺(5/5)
队名:無駄無駄 组长博客 作业博客 组员情况 张越洋 过去两天完成了哪些任务 验收了小程序的主要功能 制作Beta展示所需要用到的视频 制作Beta展示PPT 准备Beta答辩 提交记录(全组共用) ...
- Flink101-快速示例
验证本文需要具备Docker及Docker-composer,作者使用的环境为Mac + Docker Docker启动Flink集群 首先下载Flink的镜像docker pull flink,我下 ...
- 【shell脚本】显示进度条
使用动态时针版本显示进度条 [root@VM_0_10_centos shellScript]# cat progressBar.sh #!/bin/bash # 进度条,动态时针版本 # 定义显示进 ...
- Oracle 查询(SELECT)语句(一)
Ø 简介 本文介绍 Oracle 中查询(SELECT)语句的使用,在 SQL 中 SELECT 语句是相对内容较多的,也是相对比较复杂一点的,所以这里拿出来单独学习. 首先,我们先来理一下思路,我 ...
- 关于 NuGet 本地仓库、.NET Core 引用等实战