Nginx

树莓派Raspbian Jessie系统源码编译安装Nginx

树莓派Raspbian Jessie源码编译安装Nginx网站服务器

这篇教程介绍如何在树莓派Raspbian Jessie系统上编译最新版Nginx源码,并使用Systemd管理Nginx服务。写这篇教程时,最新版本的Nginx是1.9.12。 编译Nginx源码 首先使用wget来下载Nginx的源码。 wget http://nginx.org/download/nginx-1.9.12.tar.gz 下载完后,解压tar.gz文件。 tar xvf nginx-1.9.12.tar.gz cd新建的nginx目录。 cd nginx-1.9.12/ 在这个目录下有一个shell脚本文件configure。我们可以使用file命令来确定一个文件的类型,比如: file configure 也可以用文本编辑器来打开configure文件,查看其内容。 从第一行的#! /bin/sh可以得知这是一个shell脚本。 在编译之前,我们需要安装一些工具包和库文件。 sudo...

CentOS7安装Nginx服务器Mainline版本

这篇教程介绍CentOS7系统如何安装Nginx服务器Mainline版本。写这篇文章时,mainline版本是1.9.12。Nginx1.9.12增加了对HTTP/2回复首部进行Huffman编码的支持,worker_cpu_affinity支持的CPU数量可以超过64。还有一些和OpenSSL,HTTP/2相关的bug修复。 备份Nginx配置文件 如果之前在系统上安装了Nginx,那么先要将配置文件备份到home目录下,再删除Nginx。 sudo cp /etc/nginx/nginx.conf /etc/nginx/conf.d/* ~ sudo yum remove nginx CentOS7安装Nginx Mainline版本 下载Nginx 签名钥匙。 wget http://nginx.org/keys/nginx_signing.key 导入到RPM钥匙环。 sudo rpm...

为Let's Encrypt颁发的SSL证书续期

如何为Let’s Encrypt颁发的SSL证书续期

在之前的一篇文章,我介绍了Linux服务器如何向Let’s encrypt申请并安装SSL证书.Let’s encrypt的证书有效期为90天.现在Let’s Encrypt证书的自动续期还不支持Nginx.所以如果你的网站服务器是nginx,而SSL证书又快到期了,那么请看下方了解如何续期. 为Let’s Encrypt颁发的SSL证书续期 首先SSH登录Linux服务器,停止Nginx进程. sudo service nginx stop     or      sudo systemctl stop nginx 然后输入下面的命令为SSL证书续期. cd /letsencrypt ./letsencrypt-auto...

Let's Encrypt

HTTPS加密简介以及Nginx安装 Let’s Encrypt 免费SSL/TLS证书

HTTPS简介 专业术语 围绕着HTTPS加密有许多专业术语,下面几个只是冰山一角,但它们是最基本的。 SSL:Secure Socket Layer. SSL是传输层TCP加密的一种协议。SSL1.0版本于1993年左右由网景公司(NetScape)发明。由于第一版有许多安全漏洞,所以它从未面世。SSL经历了3个版本:SSL1.0,SSL2.0,SSL3.0。 TLS: Transport Layer Security. TLS是SSL的升级版。TLS现在基本替代了SSL,它也有三个版本:TLS1.0,TLS1.1,TLS1.2。目前正在筹划TLS1.3。 X.509: 它是TLS证书的格式 PKI:Public Key Infrastrcture 公钥基础设施 CA: Cerfificate...

nginx gzip

Nginx服务器如何启用gzip压缩功能

压缩的好处 压缩可以减小HTTP回复的大小,从而降低web服务器的响应时间。gzip是web服务器广泛使用的压缩工具,可以将HTTP回复的大小降低到原来的50%~30%。既提高了网页的加载速度,又可以节约服务器流量。 Nginx服务器启用gzip压缩的方法 打开/etc/nginx/nginx.conf配置文件 sudo vi /etc/nignx/nginx.conf 将下面的文字粘贴到 http 部分,如果配置文件中有下面的文字,但前面有个#符号,那么将对应的#符号去掉就行了。 gzip on; gzip_comp_level 2; gzip_http_version 1.1; gzip_proxied any; gzip_min_length 1100;...

Debian

Debian 8 Jessie如何安装Nginx1.9.5

Nginx1.9.5版本于2015年9月22日发布,属于mainline版本,而Nginx 1.8属于stable版本。Nginx官方推荐优先使用mainline版本。如果你担心mainline版本与第三方模块存在兼容问题,或者你总是担心mainline版本中会有bug,那么stable版本更加适合您。这篇文章将介绍如何在Debian 8 Jessie服务器上安装Nginx 1.9.5。 安装过程 首先,删除旧的Nginx版本: sudo apt-get remove nginx nginx-common nginx-full 安装Nginx团队的PGP签名钥匙: wget http://nginx.org/keys/nginx_signing.key sudo apt-key add nginx_signing.key 然后将下面两行添加到/etc/apt/sources.list文件的末尾:...

nginx性能优化

Nginx性能优化之配置缓冲、超时、压缩和日志

Nginx的缓冲配置 请求缓冲在Nginx请求处理中扮演了重要的角色。当收到一条请求时,Nginx将请求写入缓冲当中。缓冲中的数据成为Nginx的变量,比如$request_body。如果缓冲容量比请求容量小,那么多出来的请求会被写入硬盘,这时便会有I/O操作。Nginx提供了多个directive来修改请求缓冲。 client_body_buffer_size 这个directive设定了request body的缓冲大小。如果body超过了缓冲的大小,那么整个body或者部分body将被写入一个临时文件。如果Nginx被设置成使用文件缓冲而不使用内存缓冲,那么这个dirctive就无效。client_body_buffer_size在32位系统上默认是8k,在64位系统上默认是16k。可以在http, server 和 location模块中指定,如下: server {         client_body_buffer_size 8k; } client_max_body_size 这个directive设定Nginx可以处理的最大request body大小。如果收到的请求大于指定的大小,那么Nginx会回复HTTP...

nginx服务器性能

Nginx服务器性能优化的三大方面

Nginx服务器非常快,但是Nginx的默认设置并没有针对具体的硬件进行调优。在这篇文章中,我们要把Nginx的性能发挥到极限。Nginx的配置分为三大部分:worker进程配置、I/O配置、TCP配置。我们将分别对这三大配置展开讨论,并在最后给出综合性的配置。 Nginx的worker进程配置 worker_processes worker_processes directive指定nginx worker进程的数量。它是一个全局性配置,不属于events模块,也不属于http或location模块。 worker_processes 1; 默认的值是1,意味着nignx只打开一个worker进程。最优的设置是worker进程数量要与CPU的核数相等。我们可以用lscpu命令来找出CPU的核数。 lscpu 也可以用 cat /proc/cpuinfo | grep 'processor' | wc -l 另外,我们也可以将worker_processes的值设为auto,这样nginx会自动检测CPU核数并打开相同数量的worker进程。...

nginx性能优化

Linux系统下安装siege 网页服务器性能测试工具

我们可以用很多工具来测试web服务器的性能,有些是免费开源的,有些是需要商业许可的。siege是一个免费开源的工具,用于web服务器的压力测试。 给siege指定一个URL,siege就可以模拟大量用户来测试web服务器性能。siege提供的测试结果包括耗费时间、总数据传输量,服务器响应时间、吞吐量、并发连接数量等。 源码编译安装siege 很多Linux发行版的软件库中都收录了siege,但软件库中的版本一般都比较旧,我们可以自己下载最新版本来安装。在写这篇文章时,最新版本为3.1.2。首先下载安装包,在终端中输入下面的命令: wget http://download.joedog.org/siege/siege-latest.tar.gz 解压安装包: tar -xvf siege-latest.tar.gz 切换到解压目录 cd siege-3.1.2/ 编译前需要做一点配置。./configure命令会为siege生成配置信息,并检查编译所需要的库文件。 ./configure configure完成后,输入下面两条命令编译并安装siege: make sudo make install...

ssl证书

如何为自己的VPS服务器安装免费SSL证书

2015年12月5日更新:Let’s Encrypt是一个专门提供免费SSL证书的非盈利性CA机构,极大地方便了申请免费SSL证书的过程。因此现在我不推荐使用下面的方法。 大多数的CA证书都要花钱买,不过有一个叫StartCOM的CA机构为个人提供的证书是免费的。他们的网址是startssl.com,你可以在Firefox浏览器和Chrome浏览器的Certificate Manager受信任的CA机构中找到StartCOM这个公司。 下面,我将一步一步教你如何向StartSSL申请一个证书并安装在自己的Linux VPS服务器上。你可以将CA证书安装在web服务器上,也可以安装在自己的邮件服务器上。 在StartSSL网站注册 StartSSL网站不使用账号和密码来登录,而是使用个人证书来验证用户登录。前往StartSSL注册页面,填写你的个人信息。注意,邮箱地址不要填写QQ邮箱!否则不能接收验证码。   点击Continue后,他们会给你的邮箱发一个验证码。将验证码粘贴在文本框中。   验证通过后,将会转到一个页面,生成一个私钥。这个私钥保存在浏览器中。点击Continue生成私钥。然后他们会要求安装证书,点击Install安装。   证书会安装在你的浏览器中。记住这个证书不是我们最终要的SSL证书,而是我们登录StartSSL网站的个人证书。   域名验证 点击Control Panel进入控制面板   然后点击Validation...