nginx 安装及简单使用

Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
在高连接并发的情况下,Nginx是Apache服务器不错的替代品。

安装 Nginx

1、下载 Nginx,下载地址:https://nginx.org/en/download.html

nginx常用命令
start nginx  #启动nginx
nginx -s quit   #优雅停止nginx,有连接时会等连接请求完成再杀死worker进程
nginx -s reload #优雅重启,并重新载入配置文件nginx.conf
nginx -s reopen # 重启 Nginx 重新打开日志文件,一般用于切割日志

nginx -v    #查看版本
nginx -t    #检查nginx的配置文件
nginx -h    #查看帮助信息
nginx -V    #详细版本信息,包括编译参数
nginx -c filename   #指定配置文件

1.windows下直接安装(如有IIS,要关闭IIS),使用cmd找到安装路径,执行start nginx,通过浏览器访问localhost可以显示nginx主页
2.配置:找到conf/nginx.conf,参考以下内容作修改,修改完后使用cmd 执行nginx -s reload重启nginx即可
image

# 1.下载安装后打开nginx安装目录,找到conf/nginx.conf,使用文本/编辑器 打开

#user  nobody;
worker_processes  1; #设置值和CPU核心数一致
#error_log  logs/error.log;  #日志位置和日志级别
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;
events {
    worker_connections  1024;
}

http {
    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        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;
    server_names_hash_bucket_size 64;
    proxy_buffer_size 128k; # default: 4k|8k
    proxy_buffering on; # default: on
    proxy_buffers 64 64k; # default: 8 4k|8k
    proxy_busy_buffers_size 256k; # default: 8k|16k
    proxy_max_temp_file_size 1024m; # default: 1024m
    proxy_temp_file_write_size 256k; # default: 8k|16k
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP       $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 	#下面是server虚拟主机的配置
    server {
        listen 80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm;
        }
        #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;
        }
    }

    server {
        listen 80;
        server_name ******.com; #*修改为域名
        return 301 http://www.******.com$request_uri;   #*修改为域名
    }
	# 解析
    server {
        listen 80;  #监听端口
        server_name www.zhangsan.com; #*修改为域名 #域名
		# index index.html index.htm index.php; #站点目录下默认访问的文件 /nginx/html/index
		# root /usr/local/webserver/nginx/html;#站点目录
        location / {  //文件路由
            root path; #文件路径示例:C:/test
            try_files $uri $uri/ /index.html;
        }

        location /view/ {
            root path; #文件路径示例:C:/test
            rewrite .* /index.html break;
        }
    }

}

Nginx默认的配置文件主要有 main、events、http、server、location 五个块组成。其中 http 、server、location 属于嵌套关系。

  • main:主要控制Nginx子进程所属的用户和用户组、派生子进程数、错误日志位置与级别、pid位置、子进程优先级、进程对应cpu、进程能够打开的文件描述符数目等。
  • events:控制Nginx处理连接的方式。
  • http:Nginx处理http请求的主要配置块。
  • server:Nginx中主机配置块,可用于配置多个虚拟主机。
  • location:server中对应目录级别的控制块,可以有多个。

nginx配置详解:https://www.runoob.com/w3cnote/nginx-setup-intro.html


参考:
https://www.cnblogs.com/chendongbky/p/11126073.html
https://www.cnblogs.com/jasonbourne3/p/14099700.html


posted @ 2021-12-01 15:02  xiao旭  阅读(964)  评论(0编辑  收藏  举报