.htaccess 如何从http://domain.com:443 到https://domain.com?

.htaccess 如何从http://domain.com:443 到https://domain.com?,.htaccess,redirect,https,.htaccess,Redirect,Https,我正在尝试设置从http://domain.com:443到https://domain.com的重定向 现在http://domain.com:443使用代码在https://400.shtml上重定向我 301,永久搬迁 我希望你工作得很好。 .htaccess中的字符串无效: RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R=301,L] 我正在尝试设置从到的重定向 这

我正在尝试设置从http://domain.com:443到https://domain.com的重定向

现在http://domain.com:443使用代码在https://400.shtml上重定向我 301,永久搬迁

我希望你工作得很好。 .htaccess中的字符串无效:

RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R=301,L] 
我正在尝试设置从到的重定向

这是毫无意义的

您不能在同一端口上侦听http和https。443是https的标准端口。侦听端口443的Web服务器希望它收到的第一条消息是设置https会话的请求,而不是http消息

即使您决定违背所有理智的建议,将您的Web服务器设置为在端口443上不使用https,以便您可以响应请求,那么重定向将起作用,但随后将不起作用,因为这将尝试使用端口443(https的默认端口),而您现在已停止使用https,所以这仍然不起作用

像其他人一样,将端口80用于http,将端口443用于https。如果需要,您可以使用不同的非标准端口(例如8443),但不要将这两个标准端口混在一起-这没有意义,这会带来麻烦,也不会起作用

我正在尝试设置从到的重定向

这是毫无意义的

您不能在同一端口上侦听http和https。443是https的标准端口。侦听端口443的Web服务器希望它收到的第一条消息是设置https会话的请求,而不是http消息

即使您决定违背所有理智的建议,将您的Web服务器设置为在端口443上不使用https,以便您可以响应请求,那么重定向将起作用,但随后将不起作用,因为这将尝试使用端口443(https的默认端口),而您现在已停止使用https,所以这仍然不起作用


像其他人一样,将端口80用于http,将端口443用于https。如果需要,您可以使用不同的非标准端口(例如8443),但不要将这两个标准端口混在一起-这没有意义,它会自找麻烦,也不会工作。

为什么您有一个!在你的第一行?这不表示它只重定向非443端口吗?你是对的。无论如何,RewriteCond%{SERVER\u PORT}^443$破坏了任何站点访问。如果这是在VirtualHost部分中完成的,您是否指定?还有,您不能从转到的原因吗?为什么您需要在地址栏中指定端口443?为什么您有一个!在你的第一行?这不表示它只重定向非443端口吗?你是对的。无论如何,RewriteCond%{SERVER\u PORT}^443$破坏了任何站点访问。如果这是在VirtualHost部分中完成的,您是否指定?还有,您不能从转到的原因吗?为什么需要在地址栏中指定端口443?