使用 Apache 2、PHP 5 和 MariaDB(而不是 MySQL)的 Ubuntu 15.04 LAMP 服务器教程
本教程适用于这些操作系统版本
- Ubuntu 14.04 LTS (Trusty Tahr)
在此页
- 初步说明
- 安装 MariaDB 作为 MySQL 的替代品
- 安装 Apache 2
- 安装 PHP 5.6
- 测试 PHP 并获取有关 PHP 安装的详细信息
- 在 PHP 中获得 MySQL/MariaDB 支持
- 安装 APCu PHP 缓存以加速 PHP
- 安装 phpMyAdmin
- 链接
LAMP 是 Linux、Apache、MySQL、PHP 的缩写。本教程展示了如何在支持 PHP 5.6 (mod_php) 和 MySQL 的 Ubuntu 15.04 服务器上安装 Apache 2 网络服务器。此外,我将安装 PHPMyAdmin 以简化 MySQL 管理。 LAMP 设置是 CMS 系统(如 Joomla、Wordpress 或 Drupal)的完美基础。
初步说明
在本教程中,我将使用 IP 地址为 192.168.1.100 的主机名 server1.example.com。这些设置可能因您而异,因此您必须在适当的地方替换它们。
我建议使用最小的 Ubuntu 服务器设置作为本教程的基础,它可以是来自网络托管公司的带有 Ubuntu 15.04 最小安装的虚拟或根服务器映像,或者您可以使用我们的最小服务器教程从头开始安装服务器。
我以 root 权限运行本教程中的所有步骤,因此请确保您以 root 身份登录:
sudo su
安装 MariaDB 作为 MySQL 的替代品
我们将安装 MariaDB 而不是 MySQL。 MariaDB 是由原始 MySQL 开发人员 Monty Widenius 维护的 MySQL 分支。与 MySQL 相比,MariaDB 与 MySQL 兼容并提供有趣的新功能和速度改进。运行以下命令来安装 MariaDB 服务器和客户端:
apt-get -y install mariadb-server mariadb-client
现在我们为 MariaDB 设置一个 root 密码。
mysql_secure_installation
你会被问到这些问题:
Enter current password for root (enter for none): <-- press enter
Set root password? [Y/n] <-- y
New password: <-- Enter the new MariaDB root password here
Re-enter new password: <-- Repeat the password
Remove anonymous users? [Y/n] <-- y
Disallow root login remotely? [Y/n] <-- y
Reload privilege tables now? [Y/n] <-- y
使用“mysql 命令”测试 MariaDB 的登录
mysql -u root -p
并输入您在上面设置的 MariaDB root 密码。结果应该类似于下面的屏幕截图:

要离开 MariaDB shell,请输入命令 \quit\ 并按回车键。
安装阿帕奇 2
Apache 2 作为 Ubuntu 软件包提供,因此我们可以像这样安装它:
apt-get -y install apache2
现在将您的浏览器指向 http://192.168.1.100,您应该会看到 Apache2 默认页面(它有效!):

apache默认虚拟主机的文档根目录在Ubuntu上是/var/www/html,主要配置文件是/etc/apache2/apache2.conf。配置系统在 /usr/share/doc/apache2/README.Debian.gz 中有完整的记录。
安装 PHP 5.6
我们可以安装 PHP 5.6 和 Apache PHP 模块,如下所示:
apt-get -y install php5 libapache2-mod-php5
然后重新启动 Apache:
systemctl restart apache2
测试 PHP 并获取有关 PHP 安装的详细信息
默认网站的文档根目录是 /var/www/html。我们现在将在该目录中创建一个小的 PHP 文件 (info.php) 并在浏览器中调用它。该文件将显示有关我们的 PHP 安装的许多有用的详细信息,例如已安装的 PHP 版本。
nano /var/www/html/info.php
<?php
phpinfo();
?>
现在我们在浏览器中调用该文件(例如 http://192.168.1.100/info.php):

如您所见,PHP5 正在运行,并且它通过 Apache 2.0 处理程序运行,如服务器 API 行所示。如果进一步向下滚动,您将看到所有已在 PHP5 中启用的模块。 MySQL 没有在那里列出,这意味着我们还没有在 PHP 中支持 MySQL/MariaDB。
在 PHP 中获取 MySQL/MariaDB 支持
要在 PHP 中获得 MySQL 支持,我们可以安装 php5-mysqlnd 包。我将在这里安装新的 MySQL 驱动程序包 php5-mysqlnd 而不是旧的 php5-mysql 包,因为旧驱动程序在与 MariaDB 一起使用时显示有关 MySQL 库版本不匹配的错误消息。安装一些其他 PHP5 模块是个好主意,因为您的应用程序可能需要它们。您可以像这样搜索可用的 PHP5 模块:
apt-cache search php5
选择你需要的并像这样安装它们:
apt-get -y install php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
现在重新启动 Apache2:
systemctl restart apache2
安装 APCu PHP 缓存以加速 PHP
APCu 是一个免费的 PHP 操作码缓存器,用于缓存和优化 PHP 中间代码。强烈建议安装其中之一以加速您的 PHP 页面。
APCu 可以按如下方式安装:
apt-get install php5-apcu
现在重新启动 Apache:
systemctl restart apache2
现在在浏览器中重新加载 http://192.168.1.100/info.php 并再次向下滚动到模块部分。你现在应该在那里找到很多新模块:

当您不再需要 info.php 文件时,请不要忘记删除它,因为它提供了您服务器的敏感信息。运行以下命令删除该文件。
rm -f /var/www/html/info.php
安装 phpMyAdmin
phpMyAdmin 是一个 Web 界面,您可以通过它管理 MySQL 数据库。安装它是个好主意:
apt-get -y install phpmyadmin
您将看到以下问题:
Configure database for phpmyadmin with dbconfig-common? <-- Yes
Password of the database's administrative user: <-- Enter the MariaDB root password
MySQL application password for phpmyadmin: <-- Press enter, apt will create a random password automatically.
Web server to reconfigure automatically: <-- apache2
这里的答案序列截图:




MariaDB 默认为 root 用户启用一个名为 \unix_socket\ 的插件,该插件阻止 root 用户登录 PHPMyAdmin 以及与 MySQL 的 TCP 连接为 root 用户工作。因此,我将使用以下命令停用该插件:
echo "update user set plugin='' where User='root'; flush privileges;" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
之后就可以在http://192.168.1.100/phpmyadmin/下访问phpMyAdmin了:


链接
- 阿帕奇:http://httpd.apache.org/
- PHP:http://www.php.net/
- MySQL:http://www.mysql.com/
- MariaDB:https://mariadb.com/
- Ubuntu:http://www.ubuntu.com/
- phpMyAdmin:http://www.phpmyadmin.net/