-2

例子:

我在 Godaddy 上有一个域名 www.example.com,我想通过掩码转发到 200.200.200.200,这是托管在 amazon ec2 上的服务器。当我通过浏览器访问 www.example.com 时,我可以看到我的网站。但是我网站上的所有链接都链接到 200.200.200.200/home。如何使链接指向 www.example.com/home?我使用 django 作为我的网络框架。谢谢!

编辑:

我正在使用的链接示例是<a href="{% url home %}">home</a>这样的,因此呈现为<a href="/home/" >home</a>

4

1 回答 1

0

您确定需要使用屏蔽而不是转发吗?使用转发的 url,这不会发生,但我想因为掩码只是在地址栏中粘贴一个新的 url,而实际上引用了原始页面,所以任何相关链接仍然引用原始 url。此外,我了解使用屏蔽会改变 Google 抓取工具的行为方式,因此您的网站在搜索结果中的显示可能不会达到应有的高度,如果这对您很重要,则需要考虑这一点。如果出于某种原因您确实需要屏蔽,我认为您必须在所有链接中使用绝对网址(GoDaddy 中可能有一些设置可以避免这种情况,但我不知道 - 如果有,希望其他人会回答)。

在 django 中使用绝对 url 的最简单方法可能是在 settings.py 中定义一个 ROOT_URL 变量(即)。那么您的主页链接将是:ROOT_URL = http://www.example.com

<a href="{{ ROOT_URL }}{% url home %}">home</a>

您还需要传递'ROOT_URL'=settings.ROOT_URL给视图的 HtmlResponse(或改为传递 context_instance),以便模板可以访问 ROOT_URL 变量。

希望有帮助!

于 2010-12-31T22:53:24.150 回答