Ubuntu 16.04 LAMP server 指南 - 配置 Apache2.4,PHP7,和MariaDB(而不是MySQL)

翻譯自:https://www.howtoforge.com/tutorial/install-apache-with-php-and-mysql-on-ubuntu-16-04-lamp/php

昨天在虛擬機裏面安裝ubuntu server ,而後配置php開發環境,參考了這篇文章,一次性把全部的東西都安裝配置好了,因此想把這篇文章記錄下來。但願可以幫助到初學者一次性搞定這些配置(避免糾結),而後就能夠愉快地編程了,嘿嘿。html

如下是我翻譯的內容,徹底對照原文,沒有本身改動的部分(由於原文已經很完美了):mysql


 LAMP 是 Linux,Apache,MySQL,PHP的縮寫。本文教你如何在 ubuntu 16.04(Xenial Xerus) server 上安裝 Apache2,PHP7(mod_php)和MySQL。此外,還將安裝 PHPMyAdmin 工具用於管理 MySQL。web

說明

本文中,我使用 server1.example.com 做爲主機名,IP爲:192.168.1.100。你若是跟我不一樣,在相應的地方替換就好了。sql

我推薦使用 minimal Ubuntu server 做爲本文操做的基礎。shell

我在root權限下運行全部的命令,因此確保你使用的是root帳戶:數據庫

sudo su

安裝 MariaDB 做爲 MySQL 的替換

我安裝的是 MariaDB 而不是 MySQL。MariaDB 是 MySQL 的做者 Monty Widenius 所維護的 MySQL 分支版本。MariaDB 兼容 MySQL,而且增長了功能,提升了性能。運行下面的命令來安裝 MariaDB-server 和 client:apache

apt-get install mariadb-server mariadb-client

而後設置 MariaDB 的 root 密碼:編程

mysql_secure_installation

而後,出現一些提示,按照紅色提示來操做就好了:ubuntu

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

 再輸入上面設置 root 密碼,就會出現以下所示:

要離開 MariaDB shell,輸入 quit 和 回車鍵就好了。

安裝 Apache 2.4

Apache 2 能夠直接從 Ubuntu 包中獲取,只要這樣:

apt-get install apache2

如今打開瀏覽器,輸入 http://192.168.1.100,就能看到 Apache 2 默認頁面:

apache 默認文章根目錄是 /var/www/html,其主要配置文件爲:/etc/apache2/apache2.conf。其配置系統的說明文檔在 /usr/share/doc/apache2/README.Debian.gz.

安裝 PHP 7

安裝 PHP 7 和 Apache PHP 模塊:

apt-get install php7.0 libapache2-mod-php7.0

而後重啓 Apache

systemctl restart apache2

 

 測試 PHP 得到一些細節信息

 默認web站點的文檔根目錄是 /var/www/html ,我在該目錄建立一個info.php文件,而後在瀏覽器中訪問它。這個文件可以顯示有關PHP安裝的詳細信息。

vim /var/www/html/info.php

輸入文件內容:

<?php
phpinfo();

改變info.php文件的全部者爲 www-data 用戶和組

chown www-data:www-data /var/www/html/info.php

如今咱們能夠在瀏覽器中訪問 http://192.168.1.100/info.php,結果以下圖所示:

如你所看到的,PHP7.0 正在運行,從 Server API 行能夠看出,它是經過 Apache 2.0 Handler 運行的,繼續向下滾動頁面,你就看見全部已經啓用的模塊。MySQL並不在其中,這是由於咱們尚未對PHP添加MySQL/MariaDB支持。

PHP 啓用 MySQL / MariaDB 支持

爲了使 PHP 支持 MySQL,能夠安裝 php7.0-mysql 包。同時也能夠安裝其餘所須要的 PHP 模塊,使用下面命令來搜索可用的 PHP 模塊:

apt-cache search php7.0

選擇一些模塊,安裝之:

apt-get -y install php7.0-mysql php7.0-curl php7.0-gd php7.0-intl php-pear php-imagick php7.0-imap php7.0-mcrypt php-memcache  php7.0-pspell php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl php7.0-mbstring php-gettext

 重啓 Apache2

systemctl restart apache2

如上圖所示,PHP已經啓用了 MySQL/MariaDB 支持。

 安裝 APCu PHP 緩存來加速 PHP 運行

APCu 是一個免費的 PHP opcode cacher 用來緩存和優化 PHP 中間代碼。推薦安裝它來加速PHP速度。

安裝:

apt-get install php-apcu

重啓 Apache:

systemctl restart apache2

刷新一下 http://192.168.1.100/info.php,看到 apcu 模塊:

請刪除info.php文件,它會顯示你服務器的敏感信息。運行下面的命令來刪除:

rm -f /var/www/html/info.php

啓用 Apache 的 SSL 網站支持

 SSL/TLS 是一個安全層,用於加密瀏覽器與服務器之間的鏈接。使用下面的命令以啓用 https:// 支持

a2enmod ssl
a2ensite default-ssl

這兩行命令啓用了 ssl 模塊,並在 /etc/apache2/sites-enabled 文件夾中添加了 /etc/apache2/sites-available/default-ssl.conf 的連接,以將其包括到apache 配置之中。而後重啓apache來啓用新配置:

systemctl restart apache2

如今瀏覽器打開 https://192.168.1.100,看到:

你看到了一個 SSL 警告:該服務器的 SSL 證書 是 「本身頒發給本身的」,這表示瀏覽器不信任該證書,因此你必須先接受安全警告,而後才能打開apache 默認頁面:

瀏覽器地址欄URL前面的 「綠色的鎖」代表鏈接是通過加密的。要想解除 SSL 警告,能夠從 SSL 證書頒發機構得到一個官方簽名的SSL證書,而後替換默認自帶的證書:/etc/ssl/certs/ssl-cert-snakeoil.pem。

 安裝 phpMyAdmin

經過phpMyAdmin能夠操做MySQL數據庫。安裝命令:

apt-get install phpmyadmin

而後看到這些提示,按照紅色提示輸入就好了:

Web server to configure automatically: <-- Select the option: apache2
Configure database for phpmyadmin with dbconfig-common? <-- Yes
MySQL application password for phpmyadmin: <-- Press enter, apt will create a random password automatically.

MariaDB 默認爲root用戶啓用了「unix_socket」插件,這個插件會阻止root用戶登陸phpmyadmin和root用戶到MySQL的TCP鏈接。所以,使用命令禁用了它:

echo "update user set plugin='' where User='root'; flush privileges;" | mysql -u root -p mysql

而後輸入 MariaDB root 密碼。

以後,你就能夠經過 http://192.168.1.100/phpmyadmin/ 來訪問:

 


 

另外,說明一些操做過程當中可能會遇到的問題以及解決辦法。

(1)安裝完訪問 phpmyadmin 時,出現錯誤:The reqeusted URL /phpmyadmin was not found on this server

個人解決辦法在這裏:連接

(2)成功打開phpmyadmin 以後,輸入用戶名和密碼

相關文章
相關標籤/搜索