由于 Django 不执行 .htaccess(至少在我的主机上),我需要以与执行 .htaccess RedirectMatch 类似的方式执行 301 RedirectMatch:
RedirectMatch 301 ^/oldfolder/(.*)$ http://sub.domain.com/newfolder/$1
通配符的工作方式与 .htaccess 不同,因此感谢您的帮助!它也必须是永久重定向,以便搜索索引知道它已被移动。我重定向的是图像到我的新 CDN 子域。
由于 Django 不执行 .htaccess(至少在我的主机上),我需要以与执行 .htaccess RedirectMatch 类似的方式执行 301 RedirectMatch:
RedirectMatch 301 ^/oldfolder/(.*)$ http://sub.domain.com/newfolder/$1
通配符的工作方式与 .htaccess 不同,因此感谢您的帮助!它也必须是永久重定向,以便搜索索引知道它已被移动。我重定向的是图像到我的新 CDN 子域。
未测试:
# Django >= 1.3
from Django.views.generic.base import RedirectView
urls = patterns('',
# some patterns here...
url(
r"^oldfolder/(?P<whatever>.*)$",
RedirectView.as_view(
url="http://sub.domain.com/newfolder/%(whatever)s",
)
),
# more patterns here
)
[编辑] 重新阅读您的问题:“我将图像重定向到我的新 CDN 子域” - 如果这是关于静态媒体(图像、css 等),那么它们不应该由 Django 提供,而是由您的前端 Web 服务器提供( Apache,Nginx,等等)所以假设 Apache 你可以RedirectMatch
在你的虚拟主机配置中使用一个简单的。