Chinaunix首页 | 论坛 | 博客
  • 博客访问: 156062
  • 博文数量: 55
  • 博客积分: 2409
  • 博客等级: 大尉
  • 技术积分: 371
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-10 14:19
文章分类

全部博文(55)

文章存档

2012年(5)

2011年(15)

2010年(6)

2009年(29)

我的朋友

分类: LINUX

2010-03-20 16:21:42

1:Nginx的安装以及调试。
   ./configure
   make && makeinstall
   cd ../
2:Nginx编译安装
   ./configure --user=mpsp --group=mpsp --prefix=/usr/mpsp/nginx --with-     http_stub_status_module--with-openssl=/usr/local/openssl
make && make install
 
更加多的详细的模块定制以及安装请参照官方的wiki
 
 
3:Nginx 配置文件测试
  # /usr/mpsp/nginx/sbinnginx -t //debug 配置文件的关键命令需要重点掌握
  nginxtestcfg
   #! /bin/bash
   echo "测试配置nginx配置文件"
   cd /usr/mpsp/nginx/sbin
   echo "`./nginx -t`"  
 如果配置文件正确,输入结果如下红色: 
2010/03/20 16:00:29 [info] 25033#0: the configuration file /usr/mpsp/nginx/conf/nginx.conf syntax is ok
2010/03/20 16:00:29 [info] 25033#0: the configuration file /usr/mpsp/nginx/conf/nginx.conf was tested successfully
 
 
4:Nginx 启动:
  #/usr/mpsp/nginx/sbin/nginx
  启动脚本nginxd
  #! /bin/bash
   echo "nginx 启动nginx"
   cd /usr/mpsp/nginx/sbin/
   ./nginx
   echo "nginx 已经启动" 
 
5:Nginx 配置文件修改重新加载:
  # kill -UHP `cat /usr/mpsp/nginx/sbin/nginx.pid` 
有时候当配置太大了,需要修改的东西太多了。可以把这写命令写成个脚本
nginxreloadcfg
#! /bin/bash
echo "重新加载nginx配置"
cd /usr/mpsp/nginx/sbin
kill -HUP `cat nginx.pid`
echo "重新加载nginx配置成功"
 
6:杀掉nginx
#! /bin/bash
echo "停止nginx"
cd /usr/mpsp/nginx/sbin
kill `cat nginx.pid`
echo "停止nginx成功"
 
 
一个nginx.conf配置情况。
 
 
#启动用户
user www www;
#工作进程数
worker_processes  4;
#每个进程打开的文件句柄数=系统总数/4
worker_rlimit_nofile  10240;
#全局错误日志及PID文件
error_log  logs/error.log  warn;
pid        sbin/nginx.pid;
#工作模式及连接数上限
events {
    #每个进程的最大连接数
    worker_connections  10240;
    #使用epoll(linux2.6的高性能方式)
    use epoll;
}
#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
    #设定mime类型
    include       mime.types;
    default_type  application/octet-stream;
    #设定日志格式
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '"$status" $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    #设置请求日志
    access_log  logs/access.log  main;
    #设定请求缓冲
    #接收header的缓冲区大小
    client_header_buffer_size    128k;
    large_client_header_buffers  4 256k;
    #客户端包体缓冲区大小
    client_body_buffer_size 1024k;
    #客户端包体最大值
    client_max_body_size 8m;
  
    #开启gzip模块,要求安装gzip 在运行./config时要指定
    gzip on;
    #最小压缩文件大小
    gzip_min_length  1100;
    #压缩缓冲区
    gzip_buffers    4 16k;
    #压缩类型
    gzip_types      text/plain;
    #压缩比率
    gzip_comp_level  9;
    #压缩通过代理的所有文件
    gzip_proxied     any;
    #vary header支持
    gzip_vary        on;
    #压缩版本(默认1.1,前端为squid2.5使用1.0)
    gzip_http_version 1.0;
    #输出缓冲区
    output_buffers  4 32k;
    postpone_output  1460;
   
    #设置超时时间
    #代理连接超时时间
    proxy_connect_timeout  90;
    #代理发送超时时间
    proxy_send_timeout  90;
    #代理读超时时间
    proxy_read_timeout  90;
    #设置从后端被代理服务器的响应内容缓冲区大小
    proxy_buffer_size  256k;
    #开启从后端被代理服务器的响应内容缓冲.
    proxy_buffering on;
    #设置从被代理的后端服务器取得的响应内容缓冲区的大小和数量
    proxy_buffers 4 256k; 
   
    #客户端发送header超时
    client_header_timeout  3m;
    #客户端发送内容超时
    client_body_timeout    3m;
    #发送到客户端超时
    send_timeout           3m;

    #开启高效文件传输模式
    sendfile        on;
    tcp_nopush     on;
    tcp_nodelay on;
    #默认编码
    #charset GBK;
    #长连接保持时间
    keepalive_timeout  120;
    #虚拟主机哈希值缓存大小
    server_names_hash_bucket_size 64;

    #后台负载均衡配置
    include upstream/www.cu.com;
    include upstream/
    include upstream/
   
    #虚拟主机配置
    include  servers/www.cu.com;
    include  servers/www.cu.com;
    include  servers/www.cu.com;
    include  servers/www.cu.com;
   }
 
如果你的需要负载的很多,以及虚拟的主机配置很多。就可以用include模块把需要配置的包含进来,然后在分别单独在/usr/mpsp/nginx/conf/的目录下新建个upstream和servers的目录,然后在各自的目录下面,分别配置配置文件。各个需要负载的以及虚拟的主机的配置文件。
这个nginx的默认搜寻配置的路径就是你的安装的nginx的conf路径下。
阅读(661) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~