我正在运行nginx作为直接安装在服务器上的反向代理。要访问不同的webapps,我正在使用子文件夹。两个webapps在docker容器(pydio和警察)中运行。
对于pydio,这个位置命令正在工作;警察的同一个人没有工作。
location ^~ /pydio {
client_max_body_size 20G;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
send_timeout 300;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:82;
proxy_redirect off;
}
我尝试通过搜索找到不同的设置 - 没有工作。
这是导致403错误的最新版本:
location ^~ /ebooks(.*)$ {
client_max_body_size 1G;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
send_timeout 300;
rewrite ^/ebooks(/.*)$ $1 break;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://192.168.100.67:83$1/;
proxy_redirect off;
autoindex on;
}
这个条目在我的error.log中:
[error] 29235#29235:* 1目录索引“/ var / www / ebooks /”被禁止,客户端:87.174.111.111,server:myadress.de,request:“GET / ebooks / HTTP / 1.1” ,主持人:“myadress.de”
当我在浏览器中直接点击 192.168.100.67:83 时,一切正常。
文件夹/ var / www / ebooks有www-data:www-data和750权限,它通过运行命令与容器链接:
docker run ... -v /var/www/ebooks:/config
...根据此https://hub.docker.com/r/lsioarmhf/cops/
希望我明白我的问题,你会帮助我。谢谢
好消息。经过多次测试后,我发现设置正确地将命令传递给docker。
location ^~ /ebooks {
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
send_timeout 300;
rewrite ^/ebooks(/.*)$ $1 break;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:83$1;
proxy_redirect off;
}
但警察页面仅以基本方式显示(背景颜色改变但矩阵未显示)
这是错误日志条目:
上游响应缓冲到临时文件/ var / lib / nginx / proxy / 1/00 0000000001,同时读取上游,客户端:11.114.211.38,server:myadress.de,request ::“GET / ebooks / resources / jQuery / jquery-1.11.1..js?v = 1.0.1 HTTP / 1.1“,上游:”http://127.0.0.1:83/resources/jQuery/jquery-1.11.1.min.js“,主持人:”myadress.de“,引荐来源:”https://myadress/ebooks/“
为您提供完整的图片。这是cops容器的nginx配置。
server {
listen 80 default_server;
# listen 443 ssl;
server_name _;
# ssl_certificate /config/keys/cert.crt;
# ssl_certificate_key /config/keys/cert.key;
access_log /config/log/nginx/access_cops.log;
error_log /config/log/nginx/error_cops.log;
root /var/www/localhost/cops;
index index.php;
#Useful only for Kobo reader
location /cops/ {
rewrite ^/download/(\d+)/(\d+)/.*\.(.*)$ /fetch.php?data=$1&db=$2&type=$3 last;
rewrite ^/download/(\d+)/.*\.(.*)$ /fetch.php?data=$1&type=$2 last;
break;
}
#Can break loading the images - if you don't see anything, comment
location ~ ^/images.*\.(gif|png|ico|jpg)$ {
expires 31d;
}
#Can also break loading the images, comment if it happens
location ~ .(js|css|eot|svg|woff|ttf)$ {
expires 31d;
}
#Not necessarily correct, it depends on distro.
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}
location /books {
root /;
internal;
}
}
如果我遗失了什么想法?