1、nginx 代理netcore项目的swagger 页面加载不出来,不用nginx代理时swagger页面正常显示,F12查看开发者模式发现报以下错误:
net::ERR_CONTENT_LENGTH_MISMATCH 206 (Partial Content)
2、 解决办法
修改nginx的配置文件,在nginx.conf中http里面加入三行配置
proxy_buffer_size 128k;
proxy_buffers 32 128k;
proxy_busy_buffers_size 128k;
效果如下
此时,问题已解决。
下面简单写一下 Centos7下安装docker nginx的方法:
docker run --name nginx_2021 -d -p 8080:80 --restart=always -e TZ="Asia/Shanghai"
--privileged=true
-v /home/data/nginx/html:/usr/share/nginx/html
-v /home/data/nginx/log:/var/log/nginx
-v /home/data/nginx/config/nginx.conf:/etc/nginx/nginx.conf:ro nginx:latest
参数解析:-d 后台运行容器,并返回容器ID;
--name 为容器起一个容易区分且容易书写的名字
-p 映射宿主机端口到容器端口,宿主机端口:容器端口
--restart=always 机器重启时自动启动容器
--privileged=true 设置权限
-e 设定一些必须的环境变量。
-e TZ="Asia/Shanghai" 设定时区为上海,强烈建议国内设定,否则容器内打印的所有日志时间都会差8小时。
-v 挂载宿主机文件到容器。
-v /home/data/nginx/html:/usr/share/nginx/html 挂载html等静态文件
-v /home/data/nginx/log:/var/log/nginx 挂载日志文件
-v /home/data/nginx/nginx.conf:/etc/nginx/nginx.conf:ro 挂载配置文件
遇到的问题一:
(1)docker 配置nginx镜像的时候,将映射文件配置到当前宿主机上,启动nginx镜像,,通过域名访问,出现 403
查看nginx error.log日志,发现出现
解决方案:
如果在/usr/share/nginx/html下面没有index.html,直接访问域名,找不到文件,会报403 forbidden, 因此需要在/usr/share/nginx/html目录下存在index.html文件(对本次配置,对应于宿主机上 /home/data/nginx/html目录下存在index.html文件)
版权声明:本文为zhy810302原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。