文章分类 - nginx
1
Nginx做网站前端,Apache后端处理PHP文件
摘要:这种结构俗称LNAMP(Linux+Nginx+Apache+MySQL+PHP),结合了Nginx高并发和静态页面高效率以及Apache稳定的动态页面处理特点。这样一来再也不用担心Nginx以FastCGI模式运行PHP时的502问题,也不必担心Apache处理静态页面过慢,负载过高的问题。请先自己搭建好LAMP环境,如果你没有按我的步骤搭建LAMP环境,可能会出现一些错误。一、使Apache监听非80端口首先先把Apache的中心主机取消掉,仅使用虚拟主机。在httpd.conf里把Listen 80改成Listen 0.0.0.0:81反正你加了虚拟主机之后中心主机也自动失效的,除非你们
阅读全文
CentOS5.5安装Nginx0.8.55+php5.3.8
摘要:1、安装Nginx# tar zxvf nginx-0.8.55.tar.gz# cd nginx-0.8.55# ./configure --prefix=/opt/nginx --with-http_stub_status_module# make && make install# /opt/nginx/sbin/nginx //启动2、安装PHP# tar zxvf php-5.3.8.tar.gz# cd php-5.3.8#./configure --prefix=/opt/php --with-config-file-path=/opt/php/etc --enab
阅读全文
Nginx+PHP 解决跨站漏洞
摘要:下载php源码,执行./configure命令,然后修改main/fopen_wrappers.c文件/* Check if the path is too long so we can give a more useful error* message. */if (strlen(path) > (MAXPATHLEN - 1)) {php_error_docref(NULL TSRMLS_CC, E_WARNING, "File name is longer than the maximum allowed path length on this platf
阅读全文
nginx正则
摘要:为何要使用301重定向在网站建设中需要网页重定向的情况很多:如网页目录结构变动,网页重命名、网页的扩展名改变、网站域名改变等。如果不做重定向,用户的收藏和搜索引 擎数据库中的旧地址只能让访客得到一个404错误信息页面,访问流量白白丧失。不仅如此,之前该页面的一切积累(比如PR值)就都白费了。301重定向不仅能使页面实现自动跳转,对于搜索引擎来说,也可能可以传递PR值。nginx重定向规则详细介绍rewrite命令nginx的rewrite相当于apache的rewriterule(大多数情况下可以把原有apache的rewrite规则加上引号就可以直接使用),它可以用在server,locat
阅读全文
windows nginx php配置
摘要:传说中nginx要比apache的负载均衡好的多,堪称神器。奈何,本人一直对新鲜事物不感冒。不过服务器上面有很多都是用nginx来做http服务器,今天偷闲了解一下。上网上搜了一下,大多数都是介绍linux下的nginx与php的配置。本人现在在windows下面想尝试一下,发现资料并不多,且并不是很准确。其间也遇到了很多问题,还好折腾了几次总算搞定了。下面说一下windows下面nginx和php的配置,不对的地方大家多担待。准备资源:原来我在用APM,很好用,集成了Apache,PHP和MySQL。这次把它关掉需要重新下载这三个文件。资源一定要准备好,不然玩不转啊。呵呵。Nginx 下载地
阅读全文
Centos 5.3 Nginx+php+mysql配置 独立的 Subversion (SVN)服务器
摘要:subversion(以下简称svn)是近年来崛起的版本管理工具,是cvs的接班人。svn服务器有2种运行方式:1. 独立服务器2. 借助apache。二种方式各有利弊,可以根据自己的需要进行配置,我不需要Http进行访问,只需要客户端可以Commit & update 就可以,所以我选择了第一种方式-独立的SVN服务器。svn存储版本数据也有2种方式:1. BDB2. FSFS。因为BDB方式在服务器中断时,有可能锁住数据(朋友在搞ldap时就深受其害,没法根治),所以还是FSFS方式更安全一点,我也选择这种方式。我的环境:1. svn服务器安装操作系统: Centos 5.3,安装
阅读全文
linux下nginx+svn
摘要:因为没有什么可以定制的, 所以svn直接使用系统自带的包管理软件安装, 以centos系列为例, 命令如下:yuminstallsubversion 然后是nginx的安装:mkdir-p/opt/soft groupaddweb useraddhttp-gweb-s/sbin/nologin cd/opt/soft wgethttp://sourceforge.net/projects/pcre/files/pcre/8.12/pcre-8.12.tar.gz wgethttp://www.openssl.org/source/openssl-1.0.0d.tar.gz tarzxvfpcr
阅读全文
Nginx重大漏洞--------转载的
摘要:近日,80sec发现一个漏洞,这简直让所有安装了nginx的网站犹如绑上定时炸弹,我试了一下,这个漏洞简直超级超级严重,只要你的网站是nginx,并有上传功能,那么要秒掉阁下的网站,简直不费吹灰之力。我在我的cat.catcatgo.com分支上测试了一下,大家可以看看,例如我上传了一个文件,名为logo.jpg,而事实上这个不是图片,而是一段php代码,本例是:<?echo “This is my PHP!”;?>例如一个网站上有上传头像之类的功能,只需要通过这步骗过对方程序,例如,如果我的图片上传到根目录:http://cat.catcatgo.com/logo.jpg,那么只
阅读全文
Nginx 全解析
摘要:目 录一、 Nginx 基础知识二、 Nginx 安装及调试三、 Nginx Rewrite四、 Nginx Redirect五、 Nginx 目录自动加斜线:六、 Nginx Location七、 Nginx expires八、 Nginx 防盗链九、 Nginx访问控制十、 Nginx日志处理十一、 Nginx Cache十二、 Nginx负载均衡十三、 Nginx简单优化 十四、 如何构建高性能的LEMP环境十五、 Nginx服务监控十六、 常见问题与错误处理.十七、 相关资源下载【前言】:编写此技术指南在于推广普及NGINX在国内的使用,更方便的帮助大家...
阅读全文
nginx 目录自动加斜线”/”
摘要:默认配置当你访问http://abc.example.com/dir 时不会加”/”常见做法 if (-d $request_filename){ rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent; }更佳的替代方法optimize_server_names off;#优化服务器名称:关server_name_in_redirect off;#服务器名称重定向:关http://wiki.codemongers.com/Ngin ... timize_server_names最佳方法在nginx.conf 在http或server加入http{
阅读全文
Nginx虚拟主机多server_name的顺序问题
摘要:今天在配置Nginx + PHP +MediaWiki中,发现一个问题:MediaWiki所在的Nginx虚拟主机绑定了多个域名,但是不管通过什么域名访问MediaWiki首页,都会被跳转到其中的一个域名上。Nginx配置文件中没有相关的rewrite跳转规则,那么就应该是MediaWiki的PHP程序做的跳转,但是,遍历了MediaWiki目录下的所有文件以及查询了MySQL数据库中的每个表,都没有发现记录有这个域名。后来,通过查看源代码发现MediaWiki是根据$_SERVER['SERVER_NAME']做的跳转,顺藤摸瓜,发现了下列问题:在一个Nginx虚拟主机中,可
阅读全文
nginx自动日志功能与日志自动切割脚本
摘要:关于nginx包含变量的自动日志: 使用自动日志需要注意以下: 1、nginx日志目录权限,以我的安装路径为例/usr/local/nginx,那我的日志目录就是在/usr/local/nginx/logs里;使用了包含变量自动日志,那么这个目录nginx的用户需要有写入的权限,否则将不可能生成日志。默认情况下,nginx的运行用户为nobady。 我的习惯是安装一个程序然后给他分配一个专用账户使用。 2、缓存将不会被使用,因为使用了变量的原因吧(这一点我还没有完全理解) 3、每条日志,要先打开文件,然后写入,最后关闭文件,如此循环。此时,需要开启nginx的open_log_file...
阅读全文
Lighttpd、Nginx 、Apache 隐藏响应头信息的Server信息和版本信息
摘要:web server避免一些不必要的麻烦,可以把apache和php的版本信息不显示隐藏 Apache 版本信息/etc/apache2/apache2.conf 或 /etc/httpd/conf/httpd.confServerTokens ProductOnlyServerSignature Off重启 apache现在 http 头里面只看到:Server: Apache=====================nginx#vi nginx.conf在http 加上 server_tokens off;如下:http {……省略配置sendfile on;tcp_nopush on;k
阅读全文
Nginx反向代理Apache的情况下让Apache获得真实IP
摘要:自从Nginx出现以后, 我们都喜欢让 Nginx 跑在前方处理静态文件, 然后通过 proxy 把动态请求过滤给 apache.那么就会出现个问题, 跑在后方 apache 上的应用获取到的访客IP都是Nginx所在服务器的IP , 或者是本机 127.0.0.1 .最明显就是查看 apache 的访问日志.就会见到来来去去都是内网的IP.如果你的应用有诸如, "单个IP不能重复登陆”, "单个IP注册相隔n分钟”... 之类用于IP判别的安全规则.这么就麻烦了....但还好, 你可以通过修改 nginx proxy 的参数令后端应用获取到 Nginx 发来的请求报文获取
阅读全文
为nginx设置默认虚拟主机(空主机头,默认主机头)
摘要:nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效最关键的一点事,在server的设置里面添加这一行:listen 80 default;后面的default参数表示这个是默认虚拟主机。这个设置非常有用。比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。就可以这样设置:server {listen 80 default;return 500;}也可以把这些流量收集起来,导入到自己的网站,只要做以下跳转设置就
阅读全文
nginx重启脚本 (平滑重启nginx)
摘要:nginx是超级稳定的服务器,一般不会因为超载问题而需要重启,重启的目的一般都是修改配置文件后需要加载一下。最开始的时候,我是用最直接的重启方式killall -9 nginx;/data/nginx/sbin/nginx如果机器比较慢,kill进程时一瞬间杀不完,再执行一次即可。这种重启方式不是特别安全,如果配置有误,则会重启失败,需要重新修改配置文件然后再启动,期间会消耗一点时间。不过对于目前普遍还是不怎么严格的http界而言,这点时间还不至于产生太大损失,只要不是在关键时刻搞出来就好。如果希望沿用这种重启办法,我提议还是先好好测试吧。后来我在nginx.net上看到了一种更奇妙的重启ki
阅读全文
Nginx+iptables屏蔽访问Web页面过于频繁的IP(防DDOS,恶意访问,采集器)
摘要:通过分析nginx的日志来过滤出访问过于频繁的IP地址,然后添加到nginx的blockip.conf,并重启nginx脚本如下:#!/bin/shnginx_home = /Data/app_1/nginxlog_path = /Data/logs/usr/bin/tail -n50000 $log_path/access.log \|awk ‘$8 ~/aspx/{print $2,$13}’ \|grep -i -v -E “google|yahoo|baidu|msnbot|FeedSky|sogou” \|awk ‘{print $1}’|sort|uniq -c |sort -rn
阅读全文
使用Nginx的proxy_cache缓存功能取代Squid
摘要:Nginx从0.7.48版本开始,支持了类似Squid的缓存功能。这个缓存是把URL及相关组合当作Key,用md5编码哈希后保存在硬盘上,所以它可以支持任意URL链接,同时也支持404/301/302这样的非200状态码。虽然目前官方的Nginx Web缓存服务只能为指定URL或状态码设置过期时间,不支持类似Squid的PURGE指令,手动清除指定缓存页面,但是,通过一个第三方的Nginx模块,可以清除指定URL的缓存。 Nginx的Web缓存服务主要由proxy_cache相关指令集和fastcgi_cache相关指令集构成,前者用于反向代理时,对后端内容源服务器进行缓存,后者主要用于对F.
阅读全文
1

浙公网安备 33010602011771号