wordpress - Nginx 斜杠重定向 wp-admin - 可能是代理问题
问题描述
我正在为我的网站使用所有的roots.io 解决方案。https://roots.io/
我对 nginx 和 Varnish 有疑问。
按照这些说明https://www.linode.com/docs/guides/use-varnish-and-nginx-to-serve-wordpress-over-ssl-and-http-on-debian-8/我来构建这个.conf 文件
# Redirect to https
server {
listen [::]:8080;
listen 8080;
server_name www.mysite.it spicy.mysite.it *.www.mysite.it *.spicy.mysite.it;
port_in_redirect off;
access_log /srv/www/mysite.it/logs/access.log main;
error_log /srv/www/mysite.it/logs/error.log;
root /srv/www/mysite.it/current/web;
index index.php index.htm index.html;
add_header Fastcgi-Cache $upstream_cache_status;
# Specify a charset
charset utf-8;
# Set the max body size equal to PHP's max POST size.
client_max_body_size 500m;
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/#virtualbox
sendfile off;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
#try_files $uri /index.php;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
fastcgi_pass unix:/var/run/php-fpm-wordpress.sock;
}
}
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
server_name www.mysite.it spicy.mysite.it *.www.mysite.it *.spicy.mysite.it;
port_in_redirect off;
access_log /srv/www/mysite.it/logs/ssl-access.log main;
error_log /srv/www/mysite.it/logs/ssl-error.log;
# Multisite rewrites
rewrite ^/(wp-.*.php)$ /wp/$1 last;
rewrite ^/(wp-(content|admin|includes).*) /wp/$1 last;
# SSL configuration
include h5bp/directive-only/ssl.conf;
include h5bp/directive-only/ssl-stapling.conf;
ssl_dhparam /etc/nginx/ssl/dhparams.pem;
ssl_buffer_size 1400; # 1400 bytes to fit in one MTU
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; ";
ssl_certificate /etc/nginx/ssl/my_site.it.crt;
ssl_certificate_key /etc/nginx/ssl/my_site.it.key;
include acme-challenge-location.conf;
include includes.d/all/*.conf;
include includes.d/mysite.it/*.conf;
add_header X-Content-Type-Options nosniff;
location / {
proxy_pass http://127.0.0.1;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $http_host;
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_set_header X-Forwarded-Port 443;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
fastcgi_buffer_size 32k;
fastcgi_buffers 4 32k;
}
include h5bp/directive-only/extra-security.conf;
include h5bp/directive-only/x-ua-compatible.conf;
include h5bp/location/cross-domain-fonts.conf;
include h5bp/location/protect-system-files.conf;
add_header Content-Security-Policy "frame-ancestors 'self'" always;
# Conditional X-Frame-Options until https://core.trac.wordpress.org/ticket/40020 is resolved
set $x_frame_options SAMEORIGIN;
if ($arg_customize_changeset_uuid) {
set $x_frame_options "";
}
add_header X-Frame-Options $x_frame_options always;
# Prevent search engines from indexing non-production environments
add_header X-Robots-Tag "noindex, nofollow" always;
}
一切似乎都运行良好,甚至将 cloudflare 放在“清漆”前面。
唯一的问题似乎是来自 wp-admin 的重定向,没有斜杠。
有时候是这样的:
我访问https://www.mysite.it/wp/wp-admin
它将 301 重定向到http://www.mysite.it/wp/wp-admin:8080/wp/wp-admin/
它再次重定向 307 到https://www.mysite.it/wp/wp-admin:8080/wp/wp-admin/
有人能帮我吗?我不明白如何解决它
解决方案
推荐阅读
- android - 如何在片段和对话框片段的 ViewModel 中使用相同的 mutableLiveData
- tensorflow - 为张量流/服务导出没有 Dropout 层的 Keras LSTM
- apache-spark - 大型数据帧中断 EMR 节点上的 spark collect 操作
- javascript - 如何更改轮廓颜色 v-text-field vuetify.js
- reactjs - 如何使用 Dockerfile.dev 和 Yarn 构建 React 应用程序
- pyyaml - 错误:无法卸载“PyYAML”解析方法
- pug - 如何修复 PUG 中的无效换行错误
- c# - 脚本错误:';' 预期的。统一错误
- python - GCP 数据存储游标相同
- kubernetes - Kubernetes 授予用户/服务帐户权限以使用“kubectl cp”命令