使用Nginx的反向代理Nextcloud失败

我一直在寻找这个相当长的一段时间,我没有find任何东西。 我通过各种论坛search,做了一些谷歌search,他们什么都没有。

我有一个服务器在Docker容器中运行我所有的应用程序(例如Plex,Nextcloud等)。该服务器还有一个安装了Wordpress的Nginx Docker容器。

现在,我们说内部networking中指向Nextcloud的IP是192.168.0.200:9000 。 我已经validation了,当我使用直接的IPlogindocker工程。

但是,在设置Nginx代理的时候,事情就有些失控了。 我也有Cloudflare保护,当我设置Cloudflare,它连接到docker罚款。 (假设域名是cloud.abc.com )但是,有一个内联脚本错误:

 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval'". Either the 'unsafe-inline' keyword, a hash ('sha256-Vv06cSNCZln6C3GDj3jl163TqpSEik9IA1SYp3knJ/E='), or a nonce ('nonce-...') is required to enable inline execution. 

当我禁用Cloudflare时,当我尝试连接时,Chrome会出现ERR_CONNECTION_REFUSED错误。 我猜测SSL的问题,但我没有networking的经验,所以我迷失在这里。

这是我在Nextcloud中的config.php:

 <?php $CONFIG = array ( 'memcache.local' => '\\OC\\Memcache\\APCu', 'datadirectory' => '/data', 'instanceid' => 'XXXX', 'passwordsalt' => 'XXXX', 'secret' => 'XXXX', 'trusted_domains' => array ( 0 => '192.168.0.200:9000', 1 => 'cloud.abc.com', 2 => 'www.cloud.abc.com', ), 'overwrite.cli.url' => 'https://cloud.abc.com', 'overwritehost' => 'cloud.abc.com', 'overwriteprotocol' => 'https', 'dbtype' => 'mysql', 'version' => '9.1.0.16', 'dbname' => 'nextcloud', 'dbhost' => '192.168.0.200', 'dbport' => '', 'dbtableprefix' => 'XXXX', 'dbuser' => 'XXXX', 'dbpassword' => 'XXXX', 'logtimezone' => 'UTC', 'installed' => true, ); 

这是我的Nginxconfiguration(仅适用于Nextcloud反向代理

 server { listen 80; listen 443 ssl; server_name cloud.abc.com www.cloud.abc.com; ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; ssl_prefer_server_ciphers on; client_max_body_size 0; location / { include /config/nginx/proxy.conf; proxy_pass https://192.168.0.200:9000; } } 

这里是我创build的/config/nginx/proxy.conf:

 client_max_body_size 10m; client_body_buffer_size 128k; #Timeout if the real server is dead proxy_next_upstream error timeout invalid_header http_500 http_502 http_503; # Advanced Proxy Config send_timeout 5m; proxy_read_timeout 240; proxy_send_timeout 240; proxy_connect_timeout 240; # Basic Proxy Config proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_redirect http:// $scheme://; proxy_http_version 1.1; proxy_set_header Connection ""; proxy_cache_bypass $cookie_session; proxy_no_cache $cookie_session; proxy_buffers 32 4k; 

任何想法,为什么这是失败? 提前致谢。