gpt4 book ai didi

php - 为什么前面没有 "https://"的URL会出现空白页?

转载 作者:太空宇宙 更新时间:2023-11-03 13:52:26 25 4
gpt4 key购买 nike

我带你去This page with HTTPSthis page without .这是一个 Wordpress 网站,不知何故 URL(和链接到)前面需要 HTTPS://,否则你最终会得到一个空白页面。

让我们概括一下情况并弄清楚发生了什么,因为我不知道是什么原因造成的。希望你们能告诉我如何修复它,使没有 https://的 URL 仍然显示相同的页面?

也许 .htaccess/nginx.conf 并重定向到“使用 HTTPS://”就可以了>

服务器正在运行 NGINX

我的 nginx.conf 文件:

    # HTTP -> HTTPS
server {
listen 80;
server_name ttr.nl www.ttr.nl;
return 301 https://ttr.nl$request_uri;
}

http {
client_max_body_size 100m;
}
# BEGIN W3TC Page Cache cache
location ~ /wp-content/cache/page_enhanced.*html$ {
expires modified 7200s;
add_header X-Powered-By "W3 Total Cache/0.9.4.1";
add_header Vary "Accept-Encoding, Cookie";
add_header Pragma "public";
add_header Cache-Control "max-age=7200, public";
}
location ~ /wp-content/cache/page_enhanced.*gzip$ {
gzip off;
types {}
default_type text/html;
expires modified 7200s;
add_header X-Powered-By "W3 Total Cache/0.9.4.1";
add_header Vary "Accept-Encoding, Cookie";
add_header Pragma "public";
add_header Cache-Control "max-age=7200, public";
add_header Content-Encoding gzip;
}
# END W3TC Page Cache cache
# BEGIN W3TC Browser Cache
gzip on;
gzip_types text/css text/x-component application/x-javascript application/javascript text/javascript text/x-js text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location ~ \.(css|htc|less|js|js2|js3|js4)$ {
expires 2592000s;
add_header Pragma "public";
add_header Cache-Control "max-age=2592000, public";
add_header X-Powered-By "W3 Total Cache/0.9.4.1";
}
location ~ \.(html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml)$ {
expires 7200s;
add_header Pragma "public";
add_header Cache-Control "max-age=7200, public";
add_header X-Powered-By "W3 Total Cache/0.9.4.1";
}
location ~ \.(asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|json|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|wav|wma|wri|woff|xla|xls|xlsx|xlt|xlw|zip)$ {
expires 31536000s;
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
add_header X-Powered-By "W3 Total Cache/0.9.4.1";
}
# END W3TC Browser Cache
# BEGIN W3TC Page Cache core
set $w3tc_rewrite 1;
if ($request_method = POST) {
set $w3tc_rewrite 0;
}
if ($query_string != "") {
set $w3tc_rewrite 0;
}
if ($request_uri !~ \/$) {
set $w3tc_rewrite 0;
}
if ($http_cookie ~* "(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wptouch_switch_toggle)") {
set $w3tc_rewrite 0;
}
if ($http_cookie ~* "(w3tc_preview)") {
set $w3tc_rewrite _preview;
}
set $w3tc_ssl "";
if ($scheme = https) {
set $w3tc_ssl _ssl;
}
set $w3tc_enc "";
if ($http_accept_encoding ~ gzip) {
set $w3tc_enc _gzip;
}
set $w3tc_ext "";
if (-f "$document_root/wp-content/cache/page_enhanced/$http_host/$request_uri/_index$w3tc_ssl$w3tc_rewrite.html$w3tc_enc") {
set $w3tc_ext .html;
}
if (-f "$document_root/wp-content/cache/page_enhanced/$http_host/$request_uri/_index$w3tc_ssl$w3tc_rewrite.xml$w3tc_enc") {
set $w3tc_ext .xml;
}
if ($w3tc_ext = "") {
set $w3tc_rewrite 0;
}
if ($w3tc_rewrite = 1) {
rewrite .* "/wp-content/cache/page_enhanced/$http_host/$request_uri/_index$w3tc_ssl$w3tc_rewrite$w3tc_ext$w3tc_enc" last;
}
# END W3TC Page Cache core

#gzip via varvy.com

最佳答案

对每个 URL 的请求将转到服务器上的不同端口。

很可能,但不是必需的,同一个软件正在监听两个端口上的请求。如果不同的软件(例如 Apache 和 Lighttpd)正在监听不同的端口,那么每个软件都需要分别配置为执行您想要的操作。

如果是同一个软件,那么每个端口都会有不同的配置(必须有,因为一个需要打开SSL,另一个不能)。

这些不同的配置可能有许多差异,例如不同的 DocumentRoots。 OTOH,他们可以轻松共享大量配置数据。


解决此问题的一般情况是:配置 HTTP URL 以发出 301 重定向到匹配的 HTTPS URL。

具体如何修复它取决于服务器的设置方式。

关于php - 为什么前面没有 "https://"的URL会出现空白页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38769415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com