如果没有http,我如何在PHP中将用户重定向到www域


How can I redirect a user to a www domain in PHP without the http?

我有一个网站(我们称之为www.mywebsite.com),它允许用户输入一个URL,我的网站上的其他用户可以重定向到该URL。如果用户键入一个完整的URL,比如https://www.google.com,那么一切都很好,因为我的header()函数会重定向到这个URL。

然而,当用户输入www.google.com或甚至google.com时,header()功能将尝试重定向到此https://www.mywebsite.com/www.google.com

记住,我自己无法完全格式化用户的URL,因为程序不知道网站是https://还是http://,如果你弄错了,用户可能会出现一个不存在的页面。

我需要的是一种方法,告诉PHP只访问指定的URL,而不与我的网站相关,就像用户自己在URL栏中键入的一样。

有什么想法吗?

只有在您不知道协议的情况下,您才应该重定向到http://,因为接收网站实际上有责任设置从HTTP到HTTPS的重定向。

因此,如果用户没有指定协议,只需添加非安全的http协议,就会被重定向到正确的页面。

如果用户没有插入www,则根本不应该插入。

尽管如此,您始终可以在自己的代码中执行检查,以查看另一端存在哪些协议,但您可能应该首先简单地强制用户提供