烧饼博客

Debian 8.x Jessie 使用 Dotdeb 安装最新版本 LEMP

Introduction

Showfom

Showfom

No.1 Domain Hacker from China, a Professional Linux / Windows Server Administrator.

Linux 服务器

Debian 8.x Jessie 使用 Dotdeb 安装最新版本 LEMP

Posted on .

Ubuntu Server 16.04 系统虽好,而且是商业公司 Canonical Ltd 维护,质量是绝对有保障的,但是有一点让我很不爽的地方,就是自带的 LEMP 版本太低,Nginx 可以通过官方的包解决,MySQL 不需要在意,但是 PHP 7.0.x 即使有 ondrej 大神维护的 PHP 的 PPA ,还是没法跟上官方最新稳定版的步伐。

而 Debian 由社区维护,没商业公司那么多杂七杂八的流程,Dotdeb 制作维护的 LEMP 仓库,便是其中一个佼佼者,基本上官方发布最新稳定版,这货就会跟上,比如截至 2016 年 12 月 7 日,PHP 7.0.x 官方最新版本是 7.0.13,而 Ubuntu Server 16.04 只有 7.0.8,万一中间出点啥漏洞,更新起来没那么及时。

众所周知,Ubuntu 是基于 Debian 系的,所以使用上完全不成问题,下面我们进入安装步骤吧。

1、增加 Backports 和 Dotdeb 源并更新系统

按照 Dotdeb 的安装说明,最新稳定版的 Nginx 1.10.2 已经修复并完全支持 HTTP/2 ,但是其中的 libssl 安装需要使用 Debian 8.x Jessie 的 Backports 仓库

首先编辑 /etc/apt/sources.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
sudo apt-key add dotdeb.gpg

接着更新一下系统

apt-get update

2、升级 OpenSSL

我们加入了最新版本 Nginx 1.10.2 的源,而 Debian 8.x Jessie 目前的 OpenSSL 版本还是 1.0.1 ,不支持 ALPN 如果直接安装的话会提示错误

nginx-extras : Depends: libssl1.0.0 (>= 1.0.2~beta3) but 1.0.1t-1+deb8u5 is to be installed
root@example:~# apt-get install nginx -y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 nginx : Depends: nginx-full (>= 1.10.2-2~dotdeb+http2+8.2) but it is not going to be installed or
                  nginx-light (>= 1.10.2-2~dotdeb+http2+8.2) but it is not going to be installed or
                  nginx-extras (>= 1.10.2-2~dotdeb+http2+8.2) but it is not going to be installed
         Depends: nginx-full (< 1.10.2-2~dotdeb+http2+8.2.1~) but it is not going to be installed or
                  nginx-light (< 1.10.2-2~dotdeb+http2+8.2.1~) but it is not going to be installed or
                  nginx-extras (< 1.10.2-2~dotdeb+http2+8.2.1~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

我们直接使用 Backports 安装即可:

apt-get -t jessie-backports install libssl1.0.0

3、正常安装 LEMP

接下来的步骤根据哥哥我之前写的 《Ubuntu Server 16.04 安装 LEMP / LNMP 教程》除了 Nginx 不需要加入 PPA,其他完全一毛一样,照抄即可,不再重复。

检查一下你服务器对应的 OpenSSL、 Nginx 、 PHP 版本是否正确

root@example:~# openssl version
OpenSSL 1.0.1t  3 May 2016 (Library: OpenSSL 1.0.2j  26 Sep 2016)
root@example:~# nginx -V
nginx version: nginx/1.10.2
built with OpenSSL 1.0.2j  26 Sep 2016
TLS SNI support enabled
configure arguments: --add-module=/usr/src/builddir/debian/modules/naxsi/naxsi_src --with-cc-opt='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-file-aio --with-threads --with-http_addition_module --with-http_flv_module --with-http_geoip_module=dynamic --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_mp4_module --with-http_perl_module=dynamic --with-http_random_index_module --with-http_secure_link_module --with-http_sub_module --with-http_xslt_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-stream=dynamic --with-stream_ssl_module --add-module=/usr/src/builddir/debian/modules/headers-more-nginx-module --add-dynamic-module=/usr/src/builddir/debian/modules/nginx-auth-pam --add-module=/usr/src/builddir/debian/modules/nginx-cache-purge --add-module=/usr/src/builddir/debian/modules/nginx-dav-ext-module --add-dynamic-module=/usr/src/builddir/debian/modules/nginx-development-kit --add-module=/usr/src/builddir/debian/modules/nginx-echo --add-module=/usr/src/builddir/debian/modules/ngx-fancyindex --add-module=/usr/src/builddir/debian/modules/nginx-push-stream-module --add-dynamic-module=/usr/src/builddir/debian/modules/nginx-lua --add-module=/usr/src/builddir/debian/modules/nginx-upload-progress --add-module=/usr/src/builddir/debian/modules/nginx-upstream-fair --add-module=/usr/src/builddir/debian/modules/ngx_http_substitutions_filter_module --add-module=/usr/src/builddir/debian/modules/nginx-auth-ldap --add-module=/usr/src/builddir/debian/modules/ngx_http_pinba_module --add-module=/usr/src/builddir/debian/modules/ngx_pagespeed --add-module=/usr/src/builddir/debian/modules/nginx-x-rid-header --add-module=/usr/src/builddir/debian/modules/nginx-rtmp-module --with-ld-opt=-lossp-uuid
root@example:~# php -v
PHP 7.0.13-1~dotdeb+8.1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.13-1~dotdeb+8.1, Copyright (c) 1999-2016, by Zend Technologies
Showfom

Showfom

https://sb.sb/

No.1 Domain Hacker from China, a Professional Linux / Windows Server Administrator.

参与评论 / 如无法显示则需要自行科学上网 🌚
查看或参与评论
Navigation