隐藏Nginx版本号的最简单的方法

隐藏Nginx版本号的最简单的方法

Nginx默认是显示版本号的,如:这样就给人家看到你的服务器nginx版本是0.8.44,前些时间暴出了一些Nginx版本漏洞,就是说有些版本有漏洞,而有些版本没有。这样暴露出来的版本号就容易变成攻击者可利用的信息。所以,从安全的角度来说,隐藏版本号会相对安全些! 那nginx版本号可以隐藏不?其实可以的,看下面我的步骤:
Nginx反向代理proxy_cache_path directive is not allowed错误解决方法

Nginx反向代理proxy_cache_path directive is not allowed错误解决方法

尝试使用Nginx进行反向代理过程中出现如下错误: 代码如下: nginx: [emerg] "proxy_cache_path" directive is not allowed here in /etc/nginx/conf.d/default.conf:29 提示意思“proxy_cache_path指令不被允许”,在官网上查找了相关说明,也没有发现问题,最后看应用范围才知道,他只能使用于http{  }部分,把proxy_cache_path放置于http部分即可解决此问题
Nginx配置txt、pdf、doc、xls等文件直接下载的方法

Nginx配置txt、pdf、doc、xls等文件直接下载的方法

使用Nginx时,如果要让一些附件比如 txt,pdf,doc等不直接在浏览器打开,而弹出另存为的对话框(也就是下载) 则可以在nginx的加上头配置如下: 代码如下: if ($request_filename ~* ^.*?.(txt|pdf|doc|xls)$){      add_header Content-Disposition: 'attachment;';  }  如果客户端请求的文件以txt、pdf、doc、xls为后缀的话则会让浏览器出现另存为对话框。
Nginx SSI指令配置详解

Nginx SSI指令配置详解

什么是SSIServer Side Include,通常称为服务器端嵌入,是一种类似于ASP的基于服务器的网页制作技术。大多数(尤其是基于Unix平台)的WEB服务器如Netscape Enterprise Server等均支持SSI命令。
Nginx下配置301重定向的正确方法例子

Nginx下配置301重定向的正确方法例子

之前给nginx做301重定向的时候经常会这样写: 代码如下: server {     listen       80;     server_name  www.jb51.net jb51.net;     if ($http_host = www.jb51.net) {         rewrite  (.*)  http://jb51.net$1;     }     ... } 实际标准的写法应该是 代码如下: server {     listen       80;     server_name www.jb51.net;     return       301 http://jb51.net$request_uri; }
Nginx实现静态资源的反向代理实例

Nginx实现静态资源的反向代理实例

github 中很多项目都有一个 readme 文件,很多人喜欢在文件中添加自己的创作或封面图片,比如 substack 为他的每个项目绘制了一个 logo。这些图片在 github 中能直接在页面中显示出来,不过 url 被替换成了 github 自己的。比如在 browserify 项目中,logo 的链接变成了 代码如下: https://camo.githubusercontent.com/e19e230a9371a44a2eeb484b83ff4fcf8c824cf7/687474703a2f2f737562737461636b2e6e65742f696d616765732f62726f777365726966795f6c6f676f2e706e67 而我们通过查看 raw 能发现原 url 是 代码如下: http://substack.net/images/browserify_logo.png 这样做的一个好处是防止因为在 https 网站中出现 http 链接,否则在客户端会得到一个风险警告。github 在细节上真是考虑的十分周到。 既然有需求,我们就来实现它。通常的做法是写一个应用去抓取远程的静态资源,然后反馈给前端,这就是一个简单地反向代理了。但是这样做比较繁琐,效率也未见得高,其实我们可以直接通过 nginx 来代理这些静态文件。 nginx 的 proxy_pass 支持填写任意地址,并且支持 dns 解析。所以我的思路是,将原 url 加密转成网站自身的 url。比如上面的 代码如下: http://substack.net/images/browserify_logo.png 可以加密成 代码如下: 764feebffb1d3f877e9e0d0fadcf29b85e8fe84ae4ce52f7dc4ca4b3e05bf1718177870a996fe5804a232fcae5b893ea (加密和序列化算法网上有很多,在此就不赘述了)
CentOS6.6 安装 Tengine 笔记

CentOS6.6 安装 Tengine 笔记

在先前的文章中介绍过,先前只是使用了运维人员配置好的内容,未自己进行过安装配置。周末闲来无事,对于Tengine进行了尝试性的安装。记录下面方便以后再做改进。
基于Nginx的衍生版服务器Tengine简介

基于Nginx的衍生版服务器Tengine简介

Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。
Debian7编译安装nginx简明教程

Debian7编译安装nginx简明教程

Debian 7编译nginx前的准备工作: 代码如下: apt-get install -y gcc make vim apt-get install  libpcre+* apt-get install -y grep zlib1g* apt-get install -y libssl1.0.0 apt-get install -y libssl-dev 编译nginx: 代码如下: ufo@ufo:~/$ tar zxvf nginx-1.6.2.tar.gz ufo@ufo:~/$ cd nginx-1.6.2/ ufo@ufo:~/nginx-1.6.2$ ./configure ufo@ufo:~/nginx-1.6.2$ make ufo@ufo:~/nginx-1.6.2$ make install 执行nginx 程序: 代码如下: ufo@ufo:~/nginx-1.6.2$ sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ufo@ufo:~/nginx-1.6.2$ ps aux | grep nginx root      41764  0.0  0.0  28240   768 ?        Ss   11:57   0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf nobody    41765  0.0  0.1  28668  1412 ?        S    11:57   0:00 nginx: worker process                                          ufo       41767  0.0  0.0   8064   872 pts/1    S+   11:58   0:00 grep nginx