所以我用 apache 和 mod wsgi 在 vps 上部署了 django。一切似乎都很好,除了一件事。每当我尝试提交任何表单时,都会收到 500 服务器错误。apache 的错误日志中没有显示任何错误,这真的很奇怪。
同样在提交表单之前,我收到了 mod wsgi 正在运行一个 python 版本而另一个正在运行 mod wsgi 的错误。我通过 ./configure'ing mod wsgi 解决了这个问题。
如果您需要其他任何东西,请告诉我。
这是我的 apache conf:
<VirtualHost *:80>
ServerAdmin marijus.merkevicius@gmail.com
ServerName 5.199.166.109
WSGIDaemonProcess ts threads=25
WSGIProcessGroup ts
Alias /static /home/tshirtnation/staticfiles
WSGIScriptAlias / /home/tshirtnation/index.wsgi
</VirtualHost>
模组wsgi:
导入 os 导入 sys 导入站点
# Add the app's directory to the PYTHONPATH
sys.path.append('/home/tshirtnation')
sys.path.append('/home/tshirtnation/tshirtnation')
os.environ['DJANGO_SETTINGS_MODULE'] = 'tshirtnation.settings'
os.environ['PYTHON_EGG_CACHE'] = '/tmp'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
好的,所以我发现这是因为数据库,因为我在开发中使用了不同的数据库并且它工作正常。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'tshirtnation',
'USER': 'root',
'PASSWORD': 'xxx',
'HOST': '5.199.166.109', # Or an IP Address that your DB is hosted on
'PORT': '3306',
}
}
这是我的设置。难道我做错了什么 ?
编辑:
尝试使用生产数据库进行开发,一切正常:/我完全不知道这个错误来自哪里..