如何使用apache / django重定向http请求

时间:2009-03-18 09:58:17

标签: django apache django-urls

我在Django做了一个简单的网站。我使用的网址是http :: / www.example.com/nl/和http://www.example.com/fr/

我的Django urls.py包含以下行:

(r'^(?Pnl | fr)/','example.views.index'),

在example.views.index中我检查语言参数。如果是'nl',我会显示一个模板。如果它是'fr',我会显示一个不同的模板。

这很有效。现在,客户制作了两个不同的网址:

http://www.dutch.com/http://www.french.com/

最后我会问这个问题:

我有没有办法在不更改django代码的情况下使用新网址?我假设当用户转到http://www.example.com/nl/时,我可以告诉apache呈现http://www.dutch.com/页面。但是我该怎么做? django还能从网址获取“语言”参数吗?

提前感谢您的任何答案。

1 个答案:

答案 0 :(得分:2)

如果您可以在http://www.dutch.com上使用.htaccess文件,那么可以使用apache的重定向指令

redirectMatch 301 ^(.*)$ http://www.example.com/nl/

这会将发送到dutch.com的所有请求重定向到example.com/nl

您也可以使用

redirect 301 /index.html http://www.example.com/nl/

这会将dutch.com上的“index.html”重定向到example.com/nl/(请注意,第一个参数是路径,不能是网址 - 没有http://www