爲了澄清,這是我第一次將django網站投入生產。Django重定向循環表單提交
我在django有一個簡單的網站,可以在本地使用。但是當我將其部署到生產服務器時,當我提交表單時,它會進入重定向循環。然後瀏覽器告訴我發生了一個重定向循環,並要求清空緩存等...
這個問題發生在管理員。我不知道它是否會發生在前端,因爲它在前端沒有任何形式。
注:
- 我沒有任何時髦的中間件。
- 我在一臺虛擬機上測試過,它的生產服務器差不多和 規格相同,並且工作正常。
- 提交的數據正確處理和保存
- 該網站的其餘部分都很好
我使用的Apache與WSGI在共享的主機,通過的.htaccess。
在這一點上,我不排除DNS配置錯誤的機會,但我已經檢查,看起來不錯。
的.htaccess:
AddHandler wsgi-script .wsgi
DirectoryIndex app22.wsgi
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app22.wsgi/$1 [QSA,PT,L]
</IfModule>
app22.wsgi:
import os, sys
os.environ['DJANGO_SETTINGS_MODULE'] = 'BTT.settings'
path = '/home/bttmonch/apps'
if path not in sys.path:
sys.path.append(path)
path = '/home/bttmonch/apps/ENV/lib/python2.7/site-packages'
if path not in sys.path:
sys.path.append(path)
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
在這一點上,我創建了一個全新的應用程序,只需激活管理員,看它是否是一些作弄問題並將其放在服務器上。同樣的事情發生。
我使用的是前面提到過的.htaccess和.wsgi文件。
我的urls.py僅僅是基本的:
from django.conf.urls.defaults import patterns, include, url
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
)
我通過test.domainname.com訪問的應用程序。 我已經試過通過test.domainname.com,test.domainname.com/app22.wsgi,domainname.com/test/和domainname.com/test/app22.wsgi訪問它...
發佈烏爾urls.py –
還張貼哪根URL的路徑組件您正在訪問的Django站點。例如。 '/some/url/app2.wsgi'或'/ some/url'。再加上什麼URL被重定向到。請注意,通常不會使用DirectoryIndex指令,因爲您與RewriteRule一起使用。 –
我編輯帖子的答案。 – hcorreia