gpt4 book ai didi

python - 使用 Apache 和多个 Django 站点的奇怪、不一致的行为

转载 作者:行者123 更新时间:2023-11-28 16:40:43 26 4
gpt4 key购买 nike

我有两个 mod_wsgi django 站点和四个域名。两个域指向每个站点。当我使用 chrome 中的所有四个域访问我的两个站点时,它们都工作正常。但只是大部分时间。有时,给定一个域,会突然显示错误的站点。完全出乎意料。

这变得非常困惑,因为行为是完全不可预测的。我点击站点 A 上的一些内部链接,突然,出现了来自站点 B 的 404 错误(当然,无法在站点 B 的 url 中解析该 url,因为它是来自站点 A 的 url) .我可以在不更改 url 的情况下刷新页面,突然它会带回站点 A。或者它会停留在错误的站点并再次 404,你永远不知道。

我已经在代理服务器(例如 hidemyass.com)上试过了,同样的不可预知的结果发生了。

唯一可以预见的是,在apachectl -k graceful之后,有一段时间没有站点切换,但之后,它只是每两页发生一次。我向你保证这没有偏见。

这是我的 httpd:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName www.siteA.tk
ServerAlias siteA.tk
WSGIScriptAlias / /home/me/siteA/siteA/wsgi.py
Alias /static/ /var/www/siteA/static/

</VirtualHost>

<VirtualHost *:80>
ServerName www.siteA.com
ServerAlias siteA.com
WSGIScriptAlias / /home/me/siteA/siteA/wsgi.py

Alias /static/ /var/www/siteA/static/
</VirtualHost>

<VirtualHost *:80>
ServerName www.siteB.tk
ServerAlias siteB.tk

WSGIScriptAlias / /home/me/siteB/siteB/wsgi.py

</VirtualHost>

<VirtualHost *:80>
ServerName www.siteB.com
ServerAlias siteB.com

WSGIScriptAlias / /home/me/siteB/siteB/wsgi.py
</VirtualHost>


<Directory /var/www/siteA/static>
Order deny,allow
Allow from all
</Directory>



WSGIPythonPath /home/me/siteA:/home/me/siteB

请帮忙,我好害怕,我的电脑好像被某个 Apache 恶魔附身了。

最佳答案

去阅读:

这描述了在 Apache/mod_wsgi 下运行 Django 时可能会出现网站响应混合的所有常见原因。

除此之外,如果您不注意共享公共(public)父域的站点,您还会发现问题。为此,如果每个站点都已设置并且有效地共享相同的 cookie,则您可能需要调整 cookie 域或名称。

还要注意为所有站点共享公共(public)后端服务,例如 memcache,因为只要不同的站点使用相同的数据 key ,就可能存在争用。对于该设置,使用不同的内存缓存键前缀来保持数据分离。

关于python - 使用 Apache 和多个 Django 站点的奇怪、不一致的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19603622/

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