Nginx反向代理服务器的安装与配置
时间:10月19日

Nginx反向代理有不少需要我们解决的问题,其中有不少问题是基于安装上的问题,在安装完成后的相关调试也让很多人头疼不已。下面就向大家介绍有关于安装和调试的相关介绍。

由于服务器apache抗不住目前的并发.加上前端squid配置后,问题依然无法解决.而页面程序大部分是动态.无法使用fastcgi来处理.因此想使用Nginx反向代理apache.整个配置安装过程很简单.在考虑高并发的情况下,在安装前就做了些优化.目前配置能抗住3000以上并发.好像不是特别大哦?呵~~
但足以~~ 只是还有少量499问题..期待有人跟我讨论解决.

第1部分:安装

1 建立用户及组

/usr/sbin/groupadd www

/usr/sbin/useradd -g www www

2 安装pcre 让Nginx反向代理支持rewrite 方便以后所需

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.8.tar.gz

tar zxvf pcre-7.8.tar.gz

cd pcre-7.8/

./configure

make && make install

3 安装Nginx反向代理

wget http://sysoev.ru/nginx/nginx-0.7.58.tar.gz

tar zxvf nginx-0.7.58.tar.gz

cd nginx-0.7.58/

./configure --user=www --group=www --prefix=/usr/

local/webserver/nginx --with-http_stub_status_module 

--with-http_ssl_module --with-cc-opt='-O2' --with-cpu-opt

=opteron

make && make install

注意上文中的--with-cc-opt='-O2' --with-cpu-opt=opteron
这是编译器优化,目前最常用的是-02 而不是3.后面对应CPU的型号。

第2部分:配置及优化配置文件

1 Nginx.conf 配置文件:

user www www;

worker_processes 4;

# [ debug | info | notice | warn | error | crit ]

error_log /usr/local/webserver/nginx/logs/nginx_error.log crit;

pid /usr/local/webserver/nginx/nginx.pid;

#Specifies the value for maximum file descriptors that 

can be opened by this process.

worker_rlimit_nofile 51200;

events

{

use epoll;

worker_connections 51200;

}

http

{

include mime.types;

default_type application/octet-stream;

source_charset GB2312;

server_names_hash_bucket_size 256;

client_header_buffer_size 256k;

large_client_header_buffers 4 256k;

#size limits

client_max_body_size 50m;

client_body_buffer_size 256k;

client_header_timeout 3m;

client_body_timeout 3m;

send_timeout 3m;

#参数都有所调整.目的是解决代理过程中出现的一些502 499错误

sendfile on;

tcp_nopush on;

keepalive_timeout 120; #参数加大,以解决做代理时502错误

tcp_nodelay on;

include vhosts/upstream.conf;

include vhosts/bbs.linuxtone.conf;

}

2 upstream.conf 配置文件(这也是做负载的配置方法

upstream.conf

upstream bbs.linuxtone.com {

server 192.168.1.4:8099;

}

3 站点配置文件

bbs.linuxtone.conf

server

{

listen 80;

server_name bbs.linuxtone.conf;

charset GB2312;

index index.html index.htm;

root /date/wwwroot/linuxtone/;

location ~ ^/NginxStatus/ {

stub_status on;

access_log off;

}

location / {

root /date/wwwroot/linuxtone/;

proxy_redirect off ;

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header REMOTE-HOST $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

client_max_body_size 50m;

client_body_buffer_size 256k;

proxy_connect_timeout 30;

proxy_send_timeout 30;

proxy_read_timeout 60;

proxy_buffer_size 256k;

proxy_buffers 4 256k;

proxy_busy_buffers_size 256k;

proxy_temp_file_write_size 256k;

proxy_next_upstream error timeout invalid_header http_500 

http_503 http_404;

proxy_max_temp_file_size 128m;

proxy_pass http://bbs.linuxtone.com;

}

参数都有所调整.目的是解决代理过程中出现的一些502 499错误

#Add expires header for static content

location ~* .(jpg|jpeg|gif|png|swf)$ {

if (-f $request_filename) {

root /date/wwwroot/linuxtone/;

expires 1d;

break;

}

}

log_format access '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" $http_x_forwarded_for';

access_log /exp/nginxlogs/bbs.linuxtone_access.log access;

}

以上就是对Nginx反向代理的详细介绍,希望大家有所收获。

Nginx反向代理服务器的安装与配置的更多相关文章

  1. CentOS 6.4下Squid代理服务器的安装与配置,反向代理

    CentOS 6.4下Squid代理服务器的安装与配置 一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件 ...

  2. Linux CentOS7部署ASP.NET Core应用程序,并配置Nginx反向代理服务器

    前言: 本篇文章主要讲解的是如何在Linux CentOS7操作系统搭建.NET Core运行环境并发布ASP.NET Core应用程序,以及配置Nginx反向代理服务器.因为公司的项目一直都是托管在 ...

  3. 配置nginx反向代理服务器,解决浏览器跨域调用接口的限制问题

    配置nginx反向代理服务器,解决浏览器跨域调用接口的限制问题 - 大venn的博客 - CSDN博客https://blog.csdn.net/u011135260/article/details/ ...

  4. 让网站全面支持v4/v6 HTTP、HTTPS、HTTP/2最简单方法是增加Nginx反向代理服务器

    bg6cq/nginx-install: nginx install script https://github.com/bg6cq/nginx-install [原创]step-by-step in ...

  5. 3.nginx反向代理服务器+负载均衡

    nginx反向代理服务器+负载均衡 用nginx做反向代理和负载均衡非常简单, 支持两个用法: 1个proxy, 1个upstream,分别用来做反向代理,和负载均衡 以反向代理为例, nginx不自 ...

  6. Nginx反向代理实现负载均衡配置图解

    Nginx反向代理实现负载均衡配置图解 [导读] 负载均衡配置是超大型机器需要考虑的一些问题,同时也是数据安全的一种做法,下面我来介绍在nginx中反向代理 负载均衡配置图解,大家可参考本文章来操作. ...

  7. nginx 反向代理及 https 证书配置

    nginx 反向代理及 https 证书配置 author: yunqimg(ccxtcxx0) 1. 编译安装nginx 从官网下载 nginx源码, 并编译安装. ./configure --pr ...

  8. nginx反向代理服务器以及负载均衡,从安装到配置

    nginx的具体作用不用细说,很强大,做负载均衡.反向代理服务器解决前端跨域问题等等.下面是nginx的安装过程 首先nginx主要的依赖: pcre. pcre-devel zlib zlib-de ...

  9. nginx入门与实战 安装 启动 配置nginx Nginx状态信息(status)配置 正向代理 反向代理 nginx语法之location详解

    nginx入门与实战 网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务 就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web ...

随机推荐

  1. 3,[VS] 编程时的有必要掌握的小技巧_______________________________请从下面第 1 篇看起

    本文导览: 善用“并排显示窗口”功能 做作业/测试时使用 多项目 多个源文件 多个子函数 使用Visual Studio team代码同步工具,及时把项目文件保存到云端 关闭括号分号自动联想 技巧是提 ...

  2. 主流的单元测试工具之-JAVA新特性-Annotation

    1:什么是Annotation?Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一 ...

  3. Debug 路漫漫-11:Python: TypeError: 'generator' object is not subscriptable

    调试程序,出现以下错误: Python: TypeError: 'generator' object is not subscriptable “在Python中,这种一边循环一边计算的机制,称为生成 ...

  4. 明解C语言 入门篇 第七章答案

    练习7-1 #include <stdio.h> int main() { int n; printf(,, ); //此行显示结果为 4 3 6 因为1的字节就是为4,而-1的字节也是4 ...

  5. ACM 常用 OJ 网址

    ACM 常用 OJ 网址 浙江大学: https://pintia.cn/ 北京大学: http://poj.org/ 杭州电子科技大学: http://acm.hdu.edu.cn/ 中国科技大学: ...

  6. 常见的Redis面试"刁难"问题,值得一读

    Redis有哪些数据结构? 字符串String.字典Hash.列表List.集合Set.有序集合SortedSet. 如果你是Redis中高级用户,还需要加上下面几种数据结构HyperLogLog.G ...

  7. 【08】Jenkins:关于发布

    写在前面的话 Jenkins 对于我们用户而言,可能中间会有不同的需求,比如自动构建,接口测试,代码质量检测.但其实我们的最终目的还是打包上线.当然,各个公司的项目开发语言会不一样,但是总体而言发布方 ...

  8. Eureka和ZooKeeper的区别

    首先我们先说下: RDBMS==>(MySql,Oracle,SqlServer等关系型数据库)遵循的原则是:ACID原则(A:原子性.C:一致性.I:独立性.D:持久性.). NoSql==& ...

  9. java设计模式单例模式

    创建型模式: – 单例模式.工厂模式.抽象工厂模式.建造者模式.原型模式. • 结构型模式: – 适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模 式. • 行为型模式: – 模版 ...

  10. C# static readonly 修饰符初始化变量

    同事问了一个问题,readonly和static啥区别? 我就写了个demo运行了下: /*** * 验证初始化次数:static只初始化一次,无论多少用户访问,在内存中只有一份 * readonly ...