我有一个关于如何加载新网站的问题。
例如:
在我的网站上有这样的链接:
<a href="home">Home</a>
&#34;家用&#34;是由路由器处理的参数。路由器检查switch / case-construct此参数并调用controller-method。这个控制器方法调用一个模型方法,该方法可能会向控制器方法返回一点点。最后,控制器方法必须打开&#34;主页(home.php)。
但这样做的正常和好方法是什么?使用include("blabla/home.php");
或使用header("blabla/home.php);
?
如果您说include()
,那么我的问题是:
如何解决这个问题,URL
可能不是最新的?
示例:
上面的主页链接位于profile.php
。当您进入profile.php
时,您可以在最后的URL
&#34;个人资料&#34;中看到。如果您点击该主页链接并使用include()
,那么当您现在看到主站点时,您仍然拥有个人资料网址。
答案 0 :(得分:1)
根据HTTP请求和响应进行思考。如果您请求网址/profile
,则响应应为个人资料页面。如果您请求URL /home
,则响应应该是某种主页。
header('Location: ...')
是一种HTTP响应机制,用于指示客户端请求不同的URL。它是:
/profile
Location: /home
/home
include
只是一个加载另一个文件内容的PHP内部机制。它与HTTP响应无关,与讨论无关。
您使用应在网址上显示的内容进行回复。您可以将客户端重定向到具有Location
标头的其他URL。就是这样。