如何使用 .htaccess 更改 URL 中的端口

如何使用 .htaccess 更改 URL 中的端口

使用 .htaccess,我需要将任何此类 URL 更改 https://example.com:80/webtrees/anything_else 为完全相同的内容,但使用 443 而不是 80

请注意,我的 .htaccess 中已经有这个(它是从 http 更改为 https,它应该保留在那里,而且我不明白这个语法): RewriteEngine on RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule (.*) https://example.com/$1 [R=301,L]

谢谢!

答案1

Stack Overflow 上对此进行了回答:

https://stackoverflow.com/questions/23027847/htaccess-specific-url-to-different-port

我将修改答案以适应您的情况。答案是“条件:如果不是 443,则重写为 https。这应该会删除该端口数据。您之前的条件是基于协议的,而不是基于端口的。

    # redirect to 443 if current port is not 443 
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://example.com/$1 [R=301,L]

警告: 如果您尝试强制使用 https,我不会依赖这些规则。我会完全关闭端口 80。这样,如果他们绕过您的规则,他们就会看到 404 错误。

相关内容