Debian 8.x “jessie” 使用 Dotdeb 安裝最新版本 LEMP / LNMP

獸獸發表於2017-05-08

Ubuntu 系統雖好,而且是商業公司 Canonical Ltd 維護,質量是絕對有保障的,但是有一點讓我很不爽的地方,就是這系統太激進,出於個人愛好,我推薦使用 Debian 作為生產環境,畢竟 Ubuntu 也是 Debian 改的嘛。

Debian 由社群維護,沒商業公司那麼多雜七雜八的流程,Dotdeb 製作維護的 LEMP 倉庫,便是其中一個佼佼者,基本上官方釋出最新穩定版,這貨就會跟上。

眾所周知,Ubuntu 是基於 Debian 系的,所以使用上完全不成問題,下面我們進入安裝步驟吧。

以下安裝步驟都在 root 使用者下完成,請自行使用 su 命令切換到 root 使用者

1、增加 Backports 和 Dotdeb 源並更新系統

按照 Dotdeb 的安裝說明,從 Nginx 1.10.2 開始已經修復並完全支援 HTTP/2 ,但是其中的 OpenSSL 升級需要使用 Debian 8.x Jessie 的 Backports 倉庫

首先新建個原始檔 /etc/apt/sources.list.d/dotdeb.list ,加入這幾行

#Backports
deb http://ftp.debian.org/debian jessie-backports main

#Dotdeb
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all

deb http://packages.dotdeb.org jessie-nginx-http2 all
deb-src http://packages.dotdeb.org jessie-nginx-http2 all

然後匯入 Dotdeb 的 GnuPG key

wget https://www.dotdeb.org/dotdeb.gpg
apt-key add dotdeb.gpg

接著更新一下系統並且安裝一些必要的軟體

apt-get update && apt-get upgrade
apt-get install vim curl sudo wget

2、升級 OpenSSL

Debian 8.x Jessie 目前的 OpenSSL 版本還是 1.0.1,不支援 ALPN 的最低要求 1.0.2,所以我們升級

apt-get -t jessie-backports install libssl1.0.0
apt-get -t jessie-backports update && apt-get -t jessie-backports upgrade

檢查一下 OpenSSL 版本是否正確

root@debian ~ # openssl version
OpenSSL 1.0.2k  26 Jan 2017

3、安裝 Nginx

apt-get install nginx-extras

4、安裝 PHP 7.0.x

apt-get install php7.0-fpm php7.0-mysql php7.0-curl php7.0-gd php7.0-mbstring php7.0-mcrypt php7.0-xml php7.0-xmlrpc php7.0-zip

修改 php.ini

sed -i `s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/` /etc/php/7.0/fpm/php.ini

重啟 PHP

systemctl restart php7.0-fpm

Nginx 參考配置檔案

server {  
        listen 80;
        listen [::]:80;

# 指定網站目錄,可根據自己情況更換,建議放在 /var/www 目錄下
        root /var/www/example.com;
        index index.php index.html index.htm;

# 預設第一個域名,替換 example.com 為您的域名
        server_name example.com;

        location / {
            try_files $uri $uri/ =404;
        }

# 開啟 PHP7.0-fpm 模式
        location ~ .php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        }
}

5、安裝 MySQL 5.7.x

《Ubuntu Server 16.04 安裝 LEMP / LNMP 教程》一文一樣,我們推薦使用 Percona Server 代替原生的 MySQL,這裡就簡單重複一下

匯入 Percona Server 的源

wget https://repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc)_all.deb  
dpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.deb  

記得檢查一下 /etc/apt/sources.list.d/percona-release.list 是否正確

更新系統並安裝 Percona Server 5.7

apt-get update  
apt-get install percona-server-server-5.7

推薦做一次 MySQL 安全設定

mysql_secure_installation

使用 MySQL root 使用者登陸

mysql -u root -p 

建立資料庫 example_database

CREATE DATABASE example_database DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; 

建立使用者名稱 example_user 並賦予許可權

GRANT ALL ON example_database.* TO `example_user`@`localhost` IDENTIFIED BY `這裡改成你要設定的強大的沒人能猜出來的隨機的密碼`;  

重新整理 MySQL 許可權

FLUSH PRIVILEGES; 

沒問題以後就可以退出了

EXIT;

好了,大功告成,其實除了增加 Dotdeb 的源,不需要對 Nginx 和 PHP 進行額外的源修改,其餘步驟是和 Ubuntu 一毛一樣的,所以很多步驟都進行了說明上的省略所見,如需更詳細的說明,請訪問《Ubuntu Server 16.04 安裝 LEMP / LNMP 教程》

原文連結:《Debian 8.x “jessie” 使用 Dotdeb 安裝最新版本 LEMP / LNMP》

相關文章