nginx常用配置conf的示例代码详解


Posted in Servers onMarch 21, 2022

nginx常用配置conf

代理静态文件

# 静态文件
server { 
    # 压缩问价你配置
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 6;
    gzip_types text/plain text/css  application/javascript application/json image/jpeg image/png image/gif;
    gzip_disable "MSIE [1-6]\.";
    gzip_vary on;

    listen       8088;
    server_name web_resources;
    root   /data/nginx/static; 
    # 开启页面文件显示
    autoindex on; 
    location / {  
    # add_header Cache-Control no-store;
    add_header Cache-Control "public,max-age=2592000";  
    add_header 'Access-Control-Allow-Origin' '*';
    }
}

配置VUE项目

server {
      listen 8071 ;
      listen [::]:8071 ;
      server_name zrzyweb; # 这里是网站的域名
      location / {
      add_header 'Access-Control-Allow-Origin' $http_origin;
      add_header 'Access-Control-Allow-Credentials' 'true';
      add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
      add_header 'Access-Control-Allow-Headers' 'DNT,web-token,app-token,Authorization,Accept,Origin,Keep-Alive,User-Agent,X-Mx-ReqToken,X-Data-Type,X-Auth-Token,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
      add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
      if ($request_method = 'OPTIONS') {
        add_header 'Access-Control-Max-Age' 1728000;
        add_header 'Content-Type' 'text/plain; charset=utf-8';
        add_header 'Content-Length' 0;
        return 204;
      }
      root E:/data/vue/zrzy; # /vue/dist/ 打包后的dist目录
      try_files $uri $uri/ @router; # 指向下面的 @router否则会出现 404
      index index.html index.htm;
      }
        # 对应上面的 @router,主要Vue请求并不是真实路径,无法找到文件,需要重定向到 index.html 中,然后交给路由处理
      location @router {
      rewrite ^.*$ /index.html last;
      }
}

配置接口代理

可以配置多个代理服务

# 接口服务 
server {                                        
        listen       8090;
        server_name  njzy.natapp1.cc;
        charset utf-8;
        location /project/ {  
        proxy_set_header Host $host;  
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://192.168.1.106:8080/;
        }

        location /one/ {  
        proxy_set_header Host $host;  
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://192.168.1.243:9000/;
        }
}

完整nginx.conf配置文件

{
#user  nobody;
worker_processes  1;

#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 {
        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 {
        # 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
        #    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
        #location ~ /\.ht {
        #    deny  all;
    }
    # 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
    #    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;
# vue    
server {
        listen 8071 ;
        listen [::]:8071 ;
         server_name zrzyweb; # 这里是网站的域名
   # root /var/www/ec; # /vue/dist/ 打包后的dist目录
      add_header 'Access-Control-Allow-Origin' $http_origin;
      add_header 'Access-Control-Allow-Credentials' 'true';
      add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
      add_header 'Access-Control-Allow-Headers' 'DNT,web-token,app-token,Authorization,Accept,Origin,Keep-Alive,User-Agent,X-Mx-ReqToken,X-Data-Type,X-Auth-Token,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
      add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
      if ($request_method = 'OPTIONS') {
        add_header 'Access-Control-Max-Age' 1728000;
        add_header 'Content-Type' 'text/plain; charset=utf-8';
        add_header 'Content-Length' 0;
        return 204;
      }
                root E:/data/vue/zrzy; # /vue/dist/ 打包后的dist目录
                try_files $uri $uri/ @router; # 指向下面的 @router否则会出现 404
                index index.html index.htm;
        # 对应上面的 @router,主要Vue请求并不是真实路径,无法找到文件,需要重定向到 index.html 中,然后交给路由处理
        location @router {
            rewrite ^.*$ /index.html last;
         }
# 静态文件
server {  #web_resources
       gzip on;
       gzip_min_length 1k;
       gzip_buffers 4 16k;
       gzip_http_version 1.1;
       gzip_comp_level 6;
       gzip_types text/plain text/css  application/javascript application/json image/jpeg image/png image/gif;
       gzip_disable "MSIE [1-6]\.";
       gzip_vary on;
                                                  
        listen       8088;
        server_name web_resources;
        root   /data/nginx/static;  
        autoindex on; 
        location / {  
        # add_header Cache-Control no-store;
        add_header Cache-Control "public,max-age=2592000";  
	      add_header 'Access-Control-Allow-Origin' '*';
    } 
 
# 接口服务 
server {                                        
        listen       8090;
        server_name  njzy.natapp1.cc;
        charset utf-8;
        location /project/ {  
        proxy_set_header Host $host;  
	      proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://192.168.1.106:8080/;
        location /one/ {  
        proxy_pass http://192.168.1.243:9000/;
      
        location /two/ {  
        proxy_pass http://192.168.1.100:9000/;
        location /three/ {  
        proxy_pass http://192.168.1.100:8085/;
    }

到此这篇关于nginx常用配置conf的文章就介绍到这了,更多相关nginx配置conf内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Apache压力测试工具的安装使用
Mar 31 Servers
win10安装配置nginx的过程
Mar 31 Servers
apache基于端口创建虚拟主机的示例
Apr 22 Servers
nginx共享内存的机制详解
Mar 21 Servers
了解Kubernetes中的Service和Endpoint
Apr 01 Servers
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
Apr 07 Servers
在Windows Server 2012上安装 .NET Framework 3.5 所遇到的问题
Apr 29 Servers
搭建Yolov5服务器
Apr 30 Servers
nginx 配置缓存
May 11 Servers
nginx静态资源的服务器配置方法
Jul 07 Servers
在windows server 2012 r2中安装mysql的详细步骤
Jul 23 Servers
nginx sticky实现基于cookie负载均衡示例详解
Dec 24 Servers
Nginx设置HTTPS的方法步骤 443证书配置方法
nginx共享内存的机制详解
Nginx的基本概念和原理
解决xampp安装后Apache无法启动
Nginx图片服务器配置之后图片访问404的问题解决
Shell脚本一键安装Nginx服务自定义Nginx版本
Nginx实现会话保持的两种方式
Mar 18 #Servers
You might like
如何在PHP中使用Oracle数据库(3)
2006/10/09 PHP
PHP MYSQL乱码问题,使用SET NAMES utf8校正
2009/11/30 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
php实现随机显示图片方法汇总
2015/05/21 PHP
HTML-CSS群中单选引发的“事件”
2007/03/05 Javascript
javascript判断单选框或复选框是否选中方法集锦
2007/04/04 Javascript
不要小看注释掉的JS 引起的安全问题
2008/12/27 Javascript
在浏览器窗口上添加遮罩层的方法
2012/11/12 Javascript
Eval and new funciton not the same thing
2012/12/27 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
javascript中全局对象的parseInt()方法使用介绍
2013/12/19 Javascript
深入探究JavaScript中for循环的效率问题及相关优化
2016/03/13 Javascript
jQuery动态添加
2016/04/07 Javascript
Bootstrap轮播图学习使用
2017/02/10 Javascript
使用jquery datatable和bootsrap创建表格实例代码
2017/03/17 Javascript
用vue的双向绑定简单实现一个todo-list的示例代码
2017/08/03 Javascript
Vue中父子组件通讯之todolist组件功能开发
2018/05/21 Javascript
JavaScript实现表单注册、表单验证、运算符功能
2018/10/15 Javascript
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
2019/05/13 jQuery
Node.js使用MongoDB的ObjectId作为查询条件的方法
2019/09/10 Javascript
详解Node.js使用token进行认证的简单示例
2020/05/25 Javascript
如何HttpServletRequest文件对象并储存
2020/08/14 Javascript
极简的Python入门指引
2015/04/01 Python
用Python编写一个简单的FUSE文件系统的教程
2015/04/02 Python
一个简单的python爬虫程序 爬取豆瓣热度Top100以内的电影信息
2018/04/17 Python
python实现在一个画布上画多个子图
2020/01/19 Python
基于Python的一个自动录入表格的小程序
2020/08/05 Python
Python爬虫使用bs4方法实现数据解析
2020/08/25 Python
python中实现词云图的示例
2020/12/19 Python
Timberland美国官网:全球领先的户外品牌
2016/08/15 全球购物
俄罗斯购买剧院和演唱会门票网站:Parter.ru
2019/11/09 全球购物
2014年高中生自我评价范文
2014/09/26 职场文书
2015年物资管理工作总结
2015/05/20 职场文书
埃及王子观后感
2015/06/16 职场文书
Jsonp劫持学习
2021/04/01 PHP
解决python绘图使用subplots出现标题重叠的问题
2021/04/30 Python