关于Ubuntu 16.04,如何安装Apache 2.4 .x, MariaDB 10.x和PHP 7.x

・6 分钟阅读

部署网站或Web应用程序时最常见的Web服务解决方案是设置一个由Linux Apache MySQL和PHP组成的LAMP栈。

在本文中我们会学习如何通过在Ubuntu16.04上安装最新稳定版本的Apache2.4.x、Mariadb10.x和PHP 7.x来设置最新的LAMP栈。

前提条件

  • Ubuntu 16.04 x64服务器实例 ,
  • sudo用户请参阅有关Debian的说明文章

第1步:安装Apache 2.4 .x

使用以下命令安装最新版本的Apache 2.4 .x :


sudo apt-get install apache2 -y

使用下面的命令确认安装:

 
apache2 -v

 

输出应类似于:


Server version: Apache/2.4.18 (Ubuntu)
Server built: 2016-07-14T12:32:26

在生产环境中,你会希望删除默认的Ubuntu Apache欢迎页面:


sudo mv /var/www/html/index.html /var/www/html/index.html.bak

为了安全,应防止Apache会web root目录/var/www/html中的文件和目录公开给访问者:


sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
sudo sed -i"s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

注意:根据你的具体要求,你可以在该文件中自定义更多的设置。

启动Apache服务,并且使它在系统启动时启动:


sudo systemctl start apache2.service
sudo systemctl enable apache2.service

第2步:安装MariaDB 10.x.

在撰写本文时,MariaDB当前的稳定版本是10.1 ,你可以使用以下命令在Ubuntu 16.04 x64系统上安装MariaDB 10.1.

设置适合repo的系统:


sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.jmu.edu/pub/mariadb/repo/10.1/ubuntu xenial main'

安装MariaDB :


sudo apt update -y
sudo apt install -y mariadb-server

安装过程中,MariaDB包配置向导会自动弹出,并且要求你为MariaDB root用户设置新密码,现在,每次向导弹出时只需按Enter跳过此步骤,因为我们会在下面的Securing Mariadb过程中为Mariadb设置密码root user,

安装MariaDB后,你可以通过以下方式确认安装:

 
mysql -V

 

输出应类似于:


mysql Ver 15.1 Distrib 10.1.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

启动MariaDB服务:


sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

安全地安装MariaDB :


sudo /usr/bin/mysql_secure_installation

在交互过程中,按如下方式逐个回答问题:


Enter current password for root (enter for none): <Enter>
Set root password? [Y/n]: Y
New password: <your-MariaDB-root-password>
Re-enter new password: <your-MariaDB-root-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

注意:一定要用你自己的MariaDB root密码替换<your-MariaDB-root-password>

按照这种方式,MariaDB 10.1已经被安全地安装到你的系统上,在会来,你可以为你的网络应用程序设置指定的用户和数据库,如下所示:

root的形式登录到MySQL shell :


mysql -u root -p

键入提示时设置的MariaDB root密码。

创建一个MariaDB数据库webapp,一个数据库用户webappuser和用户yourpassword的数据库密码:


CREATE DATABASE webapp;
CREATE USER 'webappuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON webapp.* TO 'webappuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

如果需要,你可以通过查看和编辑/etc/mysql/my.cnf的主配置文件来自定义MariaDB :


sudo cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bak
sudo vi /etc/mysql/my.cnf

如果你对该文件进行了任何修改,请记住重新启动MariaDB服务:


sudo systemctl restart mariadb.service

第3步:安装PHP 7.0或7.1

步骤4设置UFW防火墙

默认情况下Ubuntu 16.04上的UFW防火墙处于非活动状态,你应该启用UFW防火墙以增强安全性:


sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in"Apache Full"
sudo ufw enable

就是这样,在查看上述过程之后,LAMP堆栈会在你的Ubuntu 16.04系统上运行,并且运行,然后,你可以在LAMP堆栈的基础上部署自己的web应用,尽情享受吧!

Huangzhongbang profile image