gpt4 book ai didi

http - 你如何实现简单的网站重定向?

转载 作者:可可西里 更新时间:2023-11-01 16:47:29 25 4
gpt4 key购买 nike

如果你去www.codinghorror.com , 它会自动重定向到 www.codinghorror.com/blog

如何重定向到“/blog/”?

我正在使用 Dreamhost Shared Hosting ,所以我配置服务器的选项是有限的。

最佳答案

这将是一个自学 HTTP 状态代码的好机会。阅读 status code definitions section HTTP 1.1规范;第 10.3 节“重定向 3xx”涵盖了与您的问题相关的状态代码。了解 HTTP 3xx 代码意味着您可以发送具有您想要的语义的响应。例如,如果您希望重定向到总是,您可以使用 HTTP 301,“永久移动”。理论上,客户端可以使用 HTTP 301 响应作为信号来存储新 URL 值以代替旧值。

您在 Dreamhost 的配置选项并不像您想象的那么有限,因为您可以在隐藏的 .htaccess 文件中指定许多 Apache 网络服务器配置指令。这个文件应该放在一个web文档目录下;使用您的示例,您可以将其放置在根 Web 文档目录 /home/midas/codinghorror/ 中,尽管 .htaccess 文件可以放置在 Apache 提供的任何目录中。 (记住在文件名中包含前导点。)其内容可以是 mod_alias 示例或已经提到的 mod_rewrite 示例。

请注意,mod_alias 的 RedirectPermanent 指令将为您发送一个 HTTP 301 状态代码。如果您想使用 mod_rewrite 来执行此操作,您可以指定状态代码:

RewriteEngine on
RewriteRule ^$ /blog/ [R=301]

如果您在没有代码的情况下使用 [R],则会使用 HTTP 302(“临时移动”)。

由于 PHP 也可供您使用,这也是一个选项,尽管使用 .htaccess 的上述选项可能更快。您可以在 /home/midas/codinghorror/ 中放置一个名为 index.php 的文件,并使用上面 Jeremy Ruten 给出的代码。同样,您可以在 header() 的第三个参数中指定状态代码:

<?php
header('Location: http://www.codinghorror.com/blog', TRUE, 301);
?>

否则,将 PHP 的 header() 函数与“位置”一起使用默认发送 HTTP 302 状态响应。

关于http - 你如何实现简单的网站重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/694280/

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