nginx 在windows上的坑

昨天试着在 docker 中装了nginx ,照着docker hub 上nginx的教程


写了dockerfile,build 通过,但就是找不到我COPY 进去 的路径。

最后用   docker exec -i -t contailer_name /bin/bash 进入容器中看看 到底 /usr/share/nginx/html 中目录是怎么放的 解决了

今天早上就想 了解下nginx 分发静态文件时的目录到底是怎么弄得,同样··磕磕绊绊的看官方文档,忍着痛苦···

第一个就是介绍 分发静态文件的,说的超级清楚有木有··


匹配时会把 location 后面的URI 加到 root 指令 后面,如果 有多个匹配的,就选最长的,所以·· location / 是最后被匹配的

上手试试?

嗯···在linux  上编辑到底是很麻烦··还是windows 上吧,应该差不多···灾难往往就发生在差不多时。

在 linux 上,路径是 正斜杠 /

在windows 上,路径是反斜杠 \  ,还要加上盘符。

最开始怎么改都没用,就是404 ,nginx -s reload 好多次,后来想着是不是重启下,nginx -s stop 结果竟然关不了··,logs 下的 nginx.pid 都没了··

再资源管理器 里面两个进程··一个master 一个 worker ,怎么搞··

把两个都删了,如果删了worker ,那··master 会重启一个··快到你反应不过来··没办法··多试几次吧

再重启时,就好了。

总结:

1、windows 上运行nginx  分发静态文件,路径必须用反斜杠,而且 location block里 只能用root,不能用alias,

因为 alias 是别名,路径的后面要加 \, 例如 alias C:\11;  访问 localhost/11.jpg,路径会是 C:\1111.jpg,看error.log 就知道了

alias C:\11\; 这样的话··,nginx 语法不通过,所以··只能root

2、 请及时看错误日志

3、还是用linux 比较好,编辑不好用,也可以练练···


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值