我拥有两个域example1.com和example2.com。我设置example1.com指向我的Django项目的“/”,这意味着example1.com/*由urls.py处理。我希望example2.com实际指向一个特定的Django URL(例如“/ 123”),目前在example1.com/123上访问。
理想情况下,当您访问example2.com/abc时,Django会将请求视为来自example1.com/123/abc,但URL仍然是“example2.com/abc".
以下是我目前在.htaccess文件中的内容,但是example2.com导致Firefox中“找不到服务器”。
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example2\.com$ [NC]
RewriteRule ^\.com(.*)$ http://example1.com/123/$1 [L]
这是我第一次使用htaccess文件做的事情,所以如果有什么不对,请道歉。我正在使用mod_wsgi(在WebFaction上) - 这仍然支持重写URL吗?谢谢你的帮助。
答案 0 :(得分:0)
尝试将以下内容添加到example2.com
网站根目录中的htaccess文件中。
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^example2\.com$ [NC]
#proxy all requests to example1.com/123
RewriteRule (.*) http://example1.com/123/$1 [P]
答案 1 :(得分:0)
我需要编辑httpd.conf,而不是.htaccess。以下是相关部分:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)?example2.com$ [NC]
RewriteRule ^(.*)$ http://example1.com/123/$1 [P,L]
这些行直接位于指向Django项目.wsgi文件的WSGIScriptAlias
下面。我不知道为什么.htaccess文件不能解决问题,但希望这可以帮助其他人解决同样的问题。
谢谢!