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个数 * 每颗物理CPU的核数

#总逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数

#查看物理CPU个数(以下是我虚拟机中的信息):

[root@localhost ~]# cat /proc/cpuinfo |grep "physical id" | sort | uniq | wc -l

1

#查看每个物理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. nginx 安装、操作命令、基本配置与参数说明

    Ubuntu安装nginx sudo apt-get install nginx Ubuntu安装之后的文件结构大致为: 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc ...

  2. linux辅助命令和基本命令

    文章目录 前言:本章主要介绍linux的一些辅助命令和基本命令 切换用户:切换后所在目录不变 切换后所在目录变成用户家目录 查看当前主机的完整名称 临时设置主机名 vi 编辑器中设置主机名 查看当前系 ...

  3. nginx基本配置与参数说明

    user nobody; #启动进程,通常设置成和cpu的数量相等 worker_processes  1; #全局错误日志及PID文件 #error_log  logs/error.log; #er ...

  4. 安装jdk配置环境、cmd命令行测试环境变量配置是否正确及运行java程序、安装IDEA编写代码测试

    文章目录 1.安装jdk配置环境 2.cmd命令行测试环境变量配置是否正确及运行java程序 3.安装IDEA编写代码测试 1.安装jdk配置环境 首先打开官网Oracle https://www.o ...

  5. linux没有jre文件夹,linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法...

    linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法 出现这个问题可能有以下几种原因: 1.对该文件没有执行的权限. 2.我们的机器是64位的,而下载的jdk是32位的. 我就是后一 ...

  6. Linux配置最基础的命令

    Linux配置最基础的命令 Linux设置最基础的命令 切换用户 查看当前主机的完整名称 临时设置主机名 永久设置主机名 查看当前系统版本信息 查看当前内核版本 临时修改网卡IP 永久修改网卡IP 重 ...

  7. 上个ensp实验只发了配置,这次是命令条目

    上个ensp实验只发了配置,这次是命令条目 前言 一.实验及需求 二.命令 1.R1 2.R2 3.R3 4.R4 5.LSW1 6.LSW2 7.LSW3 三.需求5的结果 总结 前言 上次没来的及 ...

  8. 4g的服务器mysql配置文件,服务器物理内存16G mysql数据库my.cnf配置及参数说明

    搜索热词 <服务器物理内存16G MysqL数据库my.cnf配置及参数说明>要点: 本文介绍了服务器物理内存16G MysqL数据库my.cnf配置及参数说明,希望对您有用.如果有疑问, ...

  9. 【快速安装Docker服务及Docker配置、Docker常用命令。】

    一.安装docker服务 命令行输入curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun即可快速安装 如提示curl: ...

最新文章

  1. 成功解决源路径太长,源文件名长度大于文件系统支持的长度。请尝试将其移动到具有较短路径名称的位置,或者在执行此操作前尝试将其重命名为较短的名称
  2. ORA-12154/ORA-12560 可以尝试的解决办法
  3. 对Hibernate使用之愚见
  4. Camera Calibration 相机标定:原理简介(三)
  5. 5分绩点转4分_工作复盘|因为这5点,4月份目标没完成
  6. 针对需要使用T3协议的Weblogic2628漏洞解决方案
  7. 斗鱼实名认证 mysql_我告诉你斗鱼实名认证怎么取消
  8. 产品升级 | 7月产品及解决方案升级来袭!
  9. win7未能成功安装驱动服务器,ghost win7未能成功安装设备驱动程序怎么办解决方法...
  10. cinemachine 相机跟踪物体
  11. 项目开发中的dev, test, prod , staging 环境是什么意思
  12. VMware12安装Windows7(二)-ghost win7
  13. Three.js——天空盒
  14. 毕业设计 单片机人体识别小车 - 深度学习 yolo目标检测 机器视觉 树莓派
  15. C语言 写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字之间空一个空格。如输入1990,应该输出“1 9 9 0”
  16. PHP下如何得到站点根目录
  17. es - elasticsearch - aggs - pipeline - moving_avg
  18. 16求计算机科学与技术鲁嘉华第三章作业
  19. Android 5.1 - 7.1 系统(framework)定制、修改、移植、总结 - 上篇
  20. (百度、高德、谷歌)离线地图二次开发

热门文章

  1. VTK:选定的顶点和边用法实战
  2. VTK:将点转换为字形用法实战
  3. JavaScript实现heapsort堆排序算法(附完整源码)
  4. JavaScript实现Travelling Salesman算法(附完整源码)
  5. OpenCASCADE :VTK集成服务(VIS) 之使用高级 API
  6. wxWidgets:wxBrush类用法
  7. boost::python模块显示如何使扩展类pickleable
  8. boost::geometry::strategy::simplify::douglas_peucker用法的测试程序
  9. boost::dynamic_bitset模块boost::hash的测试程序
  10. boost::container模块实现比较的程序