Nextcloud同步文件提示”Server replied “413 Request Entity Too Large”解决方法

进入proxy-nginx容器<jwilder/docker-gen>:

docker exec -it <jwilder/docker-gen> sh

键入以下命令,添加nginx配置文件my.conf:

echo "client_max_body_size 10G;" > /etc/nginx/conf.d/my.conf

使用Ctrl p & Ctrl q退出容器后,重启容器jrcs/letsencrypt-nginx-proxy-companion和jwilder/docker-gen生效。

docker restart <jrcs/letsencrypt-nginx-proxy-companion>
docker restart <jwilder/docker-gen>

debian 9 配置 Let’s Encrypt 加密访问证书

为站点域名申请加密证书:

若没有 add-apt-repository 命令则先安装:

$ vim /etc/apt/sources.list
在文件后面追加: 
deb http://ftp.debian.org/debian stretch-backports main

安装 dirmng 包:

$ apt-get install -y software-properties-common
$ apt install dirmng

添加 cerbot ppa 源:

$ add-apt-repository ppa:certbot/certbot

安装 python-certbot-nginx

$ apt-get install python-certbot-nginx

编辑 /etc/nginx/sites-available/default文件,修改server_name为需要申请ssl证书的域名:

. . .
server_name jokey.xyz;
. . .

重载 nginx 服务配置文件:

$ systemctl reload nginx

通过 nginx 的方式生成授权证书:

$ certbot --authenticator standalone --installer nginx -d jokey.xyz \
 --pre-hook "service nginx stop" --post-hook "service nginx start"

等待申请流程跑成功,就可以使用 https://jokey.xyz/ 访问站点了。

更新站点域名加密证书:

尝试更新加密证书是否能成功:

$ certbot renew --dry-run

使用 crond 定时任务可实现自动化证书更新:

$ vim /etc/cron.d/cerbot

编辑输入以下配置内容:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew

增加定时任务配置后,重载 crond 服务:

$ service crond reload