前端开发用得着的nginx配置(场景)
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
前端的工作过程里,本地开发、提供测试环境,总得有个用着顺手的服务器软件,这个场景里nginx很流行。
介绍两个好用的配置项:rewrite try_files @xxxx
rewrite
比较常见,主要用于将带版本号的静态文件路径替换成本地文件路径
例如人人网发布文件路径里面包含一个a0000的版本号,通过下面这句配置就能将http://xnimg.cn/a0001/js/base.js换成http://xnimg.cn/js/base.js直接影射到本地目录结构中。
rewrite "^/a?([0-9]+)/(.*)" /$2 last;
try_files
尝试在本地的多个路径中查找需要的文件,如果依然没找到才会返回404。下面配合@xxx配置实现一个更方便的功能。
location @xxx
这样定义了一个可以供其他配置调用的“请求处理方法”(handler),结合try_files如果本地没找到自动去线上取回指定文件。
if ( $document_uri ~*"^/[ab]?([0-9]+)/(.*)"){ set $no_version_path /$2; } location / { try_files $document_uri $no_version_path =404; error_page 404 = @online; log_not_found off; } location @online{ proxy_pass http://$host:80/$request_uri }
第一个if语句是一个匹配,把$2第二个分组值(去掉版本号的路径)保存到变量$no_version_path;
try_files的顺序:有版本号的路径、没有版本号的路径、如果404 调用@online;
@online中用$host,$request_uri这两个nginx变量拼出请求的文件路径直接代理请求到线上。
这样配置的服务器,只需要在本地存放你所关心的几个静态文件,其他不需要调试的文件全部代理到线上,省得每次花时间更新自己不关心的工程代码。
相关文章
国内一些常用PHP的CMS的Nginx服务器的伪静态规则整理
当我们从apache服务器转向Nginx服务器的时候,它们的伪静态规则就不一样了,所以你熟悉Nginx服务器的伪静态规则,自己写当然也好2011-03-03解决使用了nginx获取IP地址都是127.0.0.1 的问题
这篇文章主要介绍了解决使用了nginx获取IP地址都是127.0.0.1 的问题,获取i工具的完整代码文中给大家提到,具体实例代码跟随小编一起看看吧2021-09-09502?Bad?Gateway产生的原因及8个详细的解决方法总结
Nginx?502?Bad?Gateway的错误已经遇到好几次了,这里做一下记录,备忘,下面这篇文章主要给大家介绍了关于502?Bad?Gateway产生的原因及8个详细的解决方法,文中的介绍非常详细,需要的朋友可以参考下2023-05-05
最新评论