当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪为大家提供一个比较详细的nginx配置文件      网上找到一个比较详细的nginx的配置文件,贴出来供大家参考。   代码如下: user  nobody; worker_processes  8; #error_log  logs/error.log; #error_log  logs/error.log  notice; error_log  /var/log/nginx/error.log  in.........
    ▪一个支持上传的简单 HTTP Server(Python)          Python 有一个 SimpleHTTPServer,可以拿来方便地共享文件。比如,你要发送某个文件给局域网里的同学,你只要 cd 到所在路径,然后执行这么一行: python -m SimpleHTTPServer     人家就可以通.........
    ▪学习Nginx的无缝升级      本文介绍nginx的无缝升级操作,供大家学习参考。 首先到 http://wiki.nginx.org/ 下载最新稳定版,我们这里使用的是nginx-0.8.54。 # wget http://nginx.org/download/nginx-0.8.54.tar.gz # tar zvxf nginx-0.8.54.tar.gz .........

[1]为大家提供一个比较详细的nginx配置文件
    来源: 互联网  发布时间: 2013-12-24

网上找到一个比较详细的nginx的配置文件,贴出来供大家参考。
 

代码如下:

user  nobody;
worker_processes  8;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
error_log  /var/log/nginx/error.log  info;

pid        /var/log/nginx/nginx.pid;
           worker_rlimit_nofile 65535;

events {
        use epoll;
        worker_connections      30000;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    log_format   main '$remote_addr - $remote_user [$time_local] $status '
                      '"$request" $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

        server_names_hash_max_size   256;
        server_names_hash_bucket_size 512;

        client_header_buffer_size    1k;
        large_client_header_buffers  4 4k;
        client_max_body_size    1m;
        client_body_buffer_size 128k;
        client_header_timeout  60;
        client_body_timeout    60;
        client_body_temp_path  /var/lib/nginx/tmp/client_body 1 2;
      
        gzip on;
        gzip_min_length  1024;
        gzip_buffers     4 8k;
        gzip_comp_level  9;
        gzip_types       text/plain text/html image/x-icon;
        output_buffers   1 512k;
        postpone_output  1460;

 send_timeout            60;
        sendfile                off;
        tcp_nopush              on;
        tcp_nodelay             on;
        keepalive_timeout  60;
 
   upstream myserver   {
   ip_hash;
   server ip:1580;
   server ip:1580;
   server ip:1580;
   server ip:1580;
 
}

server {
        listen       80;
        server_name www.*****.com;
        charset utf-8;
        access_log  /var/log/nginx/www.*****.com.log;
        error_log  /var/log/nginx/error_www.log;
       
         location / {
            root   html;
            index  index.jsp index.htm;
           proxy_pass http://myserver;
        }
         location /status {
                    stub_status             on;
                    access_log              off;
                    auth_basic              "status";
                    auth_basic_user_file  /etc/nginx/htpasswd;
          }
          }
}


以上是一个主机的配置,如果跑虚拟主机就分别在upstream和server下加上相应的配置文件即可。
这里顺便提下日志轮循的问题,默认情况下nginx的日志会自动压缩每天生成一个*.log.gz的格式的日志文件,不利于awstat分析。
于是,我做了简单的处理。
修改/etc/logrotate.d/nginx文件如下
 

代码如下:
{daily
    rotate 31
    missingok
    notifempty
    create
    sharedscripts
    postrotate
        [ ! -f /var/log/nginx/nginx.pid ] || kill -USR1 `cat /var/log/nginx/nginx.pid`
    sh /root/log_date_format.sh
    endscript
}
 

具体请根据自己的情况做相应更改。

附:
log_date_format.sh
 

代码如下:
#!/bin/bash
date=`date +%Y-%m-%d`
log_dir=/var/log/nginx
for i in aaa bbb ccc;
do mv ${log_dir}/$i.test.com.log.1 ${log_dir}/$i.test.com.log.$date;
done
 

并修改/etc/crontab文件
59 23 * * * root run-parts /etc/cron.daily
每天晚上23:59分执行日志轮循。

如上处理之后,会得到类似aaa.test.com.2012-10-10格式的日志,便于使用awstat进行分析。


    
[2]一个支持上传的简单 HTTP Server(Python)
    来源: 互联网  发布时间: 2013-12-24

    Python 有一个 SimpleHTTPServer,可以拿来方便地共享文件。比如,你要发送某个文件给局域网里的同学,你只要 cd 到所在路径,然后执行这么一行:
python -m SimpleHTTPServer

    人家就可以通过 http://你的IP:8000 来访问你要共享的文件了。像我早已把这个命令做了 alias。但是,某一天,你需要从同学哪里复制一个文件到本机,然后你就会跟你同学说,XX,共享下某目录。当你以为可以用 HTTP 来访问他的 8000 端口的时候,他却告诉你,不好意思,我是 Windows 啦~~当然你可以选择在他 Windows 里装个 Python,也可以选择使用 Samba、FTP 等其他方式,但是有没有和之前一样简单的方式呢~当然了,这时候,你就需要一个支持上传的简单 HTTP Server,也就是我这个:SimpleHTTPServerWithUpload.py, 哈哈。然后你开个服务,让人家上传即可。

    其实这个就是修改自 SimpleHTTPServer 的,只不过我给它加上了最原始的上传功能,安全性方面没有验证过,不过理论上应该不会没人一直开着这个吧?另外,我对 RFC1867 的理解不一定透彻,所以,Use on your own risk!

截图如下:


点这里下载代码(右键-->目标另存为),单文件、零配置,直接用 Python 运行。

备注:如果未安装python,centos下直接执行yum install python,debian下执行apt-get install python 安装即可。


    
[3]学习Nginx的无缝升级
    来源: 互联网  发布时间: 2013-12-24

本文介绍nginx的无缝升级操作,供大家学习参考。

首先到 http://wiki.nginx.org/ 下载最新稳定版,我们这里使用的是nginx-0.8.54。
# wget http://nginx.org/download/nginx-0.8.54.tar.gz
# tar zvxf nginx-0.8.54.tar.gz
# cd nginx-0.8.54

下面按自己选择使用对应参数
#./configure --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module
# make    注意不要make install

编译完后有一个nginx执行文件.
# mv /usr/local/nginx/sbin/nginx /usr/local/webserver/nginx/sbin/nginx.old

备份下需要升级的老nginx版本,这是个非常必要的习惯

在把新/nginx-0.8.54/objs下的nginx cp到/usr/local/nginx/sbin/下
./nginx -t

测试新版本的nginx是否配置正常。如果提示:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful

//让nginx把nginx.pid改成nginx.pid.oldbin 跟着启动新的nginx
# kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`

//退出旧的nignx
# kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`

curl --head http://www.test.com
显示如下:
HTTP/1.1 200 OK
Server: nginx/0.8.54
Date: Fri, 25 Mar 2011 00:46:39 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 151
Last-Modified: Sun, 15 Aug 2010 08:11:39 GMT
Connection: keep-alive

Accept-Ranges: bytes

升级成功,已经升级至0.8.54。


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
操作系统 iis7站长之家
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3