Nginx基本配置与参数说明,下面是nginx.conf配置文件

#运行用户

#user  nobody;

worker_processes  2;

#全局错误日志及PID文件

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

#工作模式及连接数上限

events {

#epoll是多路复用IO(I/O Multiplexing)中的一种方式

#仅用于linux2.6以上内核,可以大大提高nginx的性能

#use epoll

#单个后台worker process进程的最大并发链接数

worker_connections  1024;

#并发总数是worker_processes和worker_connections的成绩

#即max_clients = worker_process * worker_connections

#在设置了反向代理的情况下,max_clients = woker_processes * worker_connections / 4

#为什么上面的方向代理要除以4,应该说是一个经验值

#根据以上条件,正常情况下的Nginx Server可以应付的最大连接为:4 * 8000 = 32000

#woker_connections值的设置跟物理内存大小有关

#因为并发受IO约束,max_clients的值须小于系统可以打开的最大文件数

#而系统可以打开的最大文件数和内存大小成正比,一般1GB内存的机器上可以打开的文件数大约是10左右

#我们来看看360M内存的VPS可以打开的文件句柄数是多少:

#$ cat /proc/sys/fs/file-max

#输出 34336 (我的是287464)

#32000 < 34336,即并发连接总数小于系统可以打开的文件句柄总数,这样就在操作系统承受的范围之内

#

#所以,worker_connections的值需根据worker_processes进程数目和系统可以打开的最大文件

#总进行适当地进行设置

#

#使得并发总数小于操作系统可以打开的最大文件数据

#其实质也就是根据主机的物理CPU和内存进行配置

#当然,理论上的并发总数可能会和实际有所偏差,因为主机还有其他的工作进程需要系统资源

#ulimit -SHn 65535

}

http {

#设定mime类型,类型由mime.type文件定义

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;

#sendfile指令指定nginx是否调用sendfile函数(zero copy方式)来输出文件,

#对于普通应用,必须设为on,

#如果用来进行下载等应用磁盘IO重负载应用,可以设置为off

#以平衡磁盘与网络I/O处理速度,降低系统的uptime

sendfile        on;

tcp_nopush     on;

#连接超时时间

#keepalive_timeout  0;

keepalive_timeout  65;

#开启gzip压缩

gzip  on;

gzip_disable "MSIE [1-6].";

#设定请求缓冲

client_header_buffer_size  128k;

large_client_header_buffers 4 128k;

#设置虚拟机主机配置

server {

listen       80;

#定义使用www.nginx.cn访问

#server_name www.nginx.cn;

server_name  localhost;

#定义服务器的默认网站根目录的访问日志

#root html;

#charset koi8-r;

#设定本虚拟主机的访问日志

#access_log  logs/host.access.log  main;

#在我的电脑上有:[root@localhost some]# pwd example.html

#/data/www/some

#

#如果按照下面的配置,在浏览器上输入:http://192.168.6.26/some/example.html

#这时候浏览器中可以看到页面内容

location / {

root   /data/www;

}

#在我的电脑

#[root@localhost images]#

#[root@localhost images]# pwd

#/data/images

#[root@localhost images]# ls

#test.png

#[root@localhost images]#

#

#在浏览器中输入:http://192.168.6.26/images/test.png,在页面中可以看到图片

location /images/ {

root /data;

}

#error_page  404              /404.html;

# redirect server error pages to the static page /50x.html

# 定义错误提示页面

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

#静态文件,nginx自己处理

location ~ ^/(images|javascript|js|css|flash|media|static)/ {

#过期30天,静态文件不怎么更新,过期可以设大一点

#如果频繁更新,则可以设置得小一点

expires 30d;

}

# proxy the PHP scripts to Apache listening on 127.0.0.1:80

#

#location ~ \.php$ {

#    proxy_pass   http://127.0.0.1;

#}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

#location ~ \.php$ {

#    root           html;

#    fastcgi_pass   127.0.0.1:9000;

#    fastcgi_index  index.php;

#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

#    include        fastcgi_params;

#}

# deny access to .htaccess files, if Apache's document root

# concurs with nginx's one

#

#禁止访问,htxxx文件

#location ~ /\.ht {

#    deny  all;

#}

}

server {

location / {

proxy_pass http://192.168.6.26:8080;

}

#表示只要是这些歌文件就转到/data/images

location ~ \.(gif|jpg|png)$ {

root /data/images;

}

}

# another virtual host using mix of IP-, name-, and port-based configuration

#

#server {

#    listen       8000;

#    listen       somename:8080;

#    server_name  somename  alias  another.alias;

#    location / {

#        root   html;

#        index  index.html index.htm;

#    }

#}

# HTTPS server

#

#server {

#    listen       443 ssl;

#    server_name  localhost;

#    ssl_certificate      cert.pem;

#    ssl_certificate_key  cert.key;

#    ssl_session_cache    shared:SSL:1m;

#    ssl_session_timeout  5m;

#    ssl_ciphers  HIGH:!aNULL:!MD5;

#    ssl_prefer_server_ciphers  on;

#    location / {

#        root   html;

#        index  index.html index.htm;

#    }

#}

}

2 辅助知识点:

#

#查看每个物理CPU中的core的个数

[root@localhost ~]# cat /proc/cpuinfo |grep "cpu cores" | uniq

cpu cores :2

查看逻辑物理CPU的个数

[root@localhost ~]# cat /proc/cpuinfo| grep"processor"| wc -l

2

查看CPU信息(型号)

[root@localhost ~]# cat /proc/cpuinfo |grep name | cut -f2 -d: | uniq -c

2  Intel(R) Core(TM) i5-3230M CPU@ 2.60GHz

查看内存信息

[root@localhost ~]# cat /proc/meminfo

02_Nginx基本配置与参数说明 + 辅助命令的更多相关文章

  1. linux配置网卡IP地址命令详细介绍及一些常用网络配置命令

    linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-- 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置 ...

  2. Java的cmd配置(也即Java的JDK配置及相关常用命令)——找不到或无法加载主类 的解决方法

    Java的cmd配置(也即Java的JDK配置及相关常用命令) ——找不到或无法加载主类  的解决方法 这段时间一直纠结于cmd下Java无法编译运行的问题.主要问题描述如下: javac 命令可以正 ...

  3. sqlplus 配置方法及相关命令

    sqlplus 配置方法及相关命令 1.配置文件 1.1 全局模式什么叫全局模式呢:当我们配置完sqlplus工具加载配置文件后,无论在哪个目录下登陆数据库,您设置[sqlplus提示符样子,在任何目 ...

  4. Linux 环境配置 网络端口进程命令

    网络通信命令ping 命令路径:/bin/ping 执行权限:所有用户作用:测试网络的连通性语法:ping 选项 IP地址  -c 指定发送次数    ping 命令使用的是icmp协议,不占用端口e ...

  5. centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课

    centos  MySQL主从配置 ntsysv   chkconfig  setup命令  配置MySQL 主从 子shell  MySQL备份  kill命令  pid文件  discuz!论坛数 ...

  6. nginx基本配置与参数说明以及Nginx中的upstream轮询机制介绍

    转自:http://blog.csdn.net/happydream_c/article/details/54943802 一.nginx简介 Nginx (发音为[engine x])专为性能优化而 ...

  7. Linux网络——配置防火墙的相关命令

    Linux网络——配置防火墙的相关命令 摘要:本文主要学习了如何在Linux系统中配置防火墙. iptables命令 iptables准确来讲并不是防火墙,真正的防火墙是运行于系统内核中的netfil ...

  8. 网络配置及一些shell命令概览

    一.临时配置网络(ip,网关,dns)+永久配置 1.临时配置网络IP地址命令为“ifconfig 网卡名 ip地址/24”,例如: ifconfig eth0 192.168.16.253/24 2 ...

  9. linux常用命令---系统辅助命令

    系统辅助命令

随机推荐

  1. Dynamics CRM2016 Update or Create parentcustomerid in Contact using web api

    联系人实体中有个特殊的字段parentcustomerid 在通过web api创建或更新记录时,如果在给这个字段赋值时当做查找字段对待的话,那你就会遇到问题了,报错信息如下 正确的赋值方式如下

  2. springMVC源码分析--AbstractHandlerMapping(二)

    上一篇博客springMVC源码分析--HandlerMapping(一)中我们简单的介绍了HandlerMapping,接下来我们介绍一下它的抽象实现类AbstractHandlerMapping

  3. html5全解析

    htm是软件开发中非常基础的知识,也是很重要的知识,在web中是很重要的知识点,在此梳理一下主要内容: 1.HTML是什么? 全称为HyperText Markup Language,超文本标记语言, ...

  4. Git运用基础之如何删除Github上不想要的项目

    今天突然想删除,(强迫症想删除)之前练习时多创建的多个Github上的源代码或者无用Demo地址,然后看了一些文章都比较老式,这里我展示一下最新的删除步骤. 一.首先登录自己的Github账户主页(没 ...

  5. 在自己笔记本电脑上如何访问虚拟机的内容、包括可以使用ssh、访问tomcat、访问nginx

    1.给自己的电脑设置一个回环网卡,关于如何配置回环网卡,可以百度搜索一下 设置好后的状态如下: 并把回环网卡的ipv4的值设置成192.168.1.1 配置如下: 2.将vmware中的"虚 ...

  6. Java进阶(四十三)线程与进程的区别

    Java进阶(四十三)线程与进程的区别 1.线程的基本概念   概念:线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必 ...

  7. 全文检索 Lucene(4)

    经过了前面几篇文章的学习,我们基本上可以适用Lucene来开发我们的站内搜索应用了.但是观察一下目前的主流的搜索引擎,我们会发现查询结果会有高亮的显示效果.所以,今天我们就来学习一下,给Lucene添 ...

  8. 安卓如何快速更新SDK

    打开SDK Manager,点击tools->options打开,如图: Proxy Setting如下设置: HTTP Proxy server:mirrors.neusoft.edu.cn ...

  9. Java基本语法-----java进制的转换

    进制: 进制是一种记数方式 ,可以用有限的数字符号代表所有的数值.由特定的数值组成. 1整型的表现形式 1.十进制: 都是以0-9这九个数字组成,不能以0开头. 2.二进制: 由0和1两个数字组成. ...

  10. Android必知必会-获取View坐标和长宽的时机

    如果移动端访问不佳,请访问–>Github版 背景 最近要实现一个功能,用到了一些属性动画,需要获取一些View的坐标信息,设计图如下: 这里我使用的是DialogFragment来实现的,可以 ...