尽管在过去的几周里我尽了最大的努力,但在尝试建立django框架的同时,我仍然被困在Pythonanywhere上部署WSGI文件。这里有类似的主题,但没有一个适合我的情况。
我正在关注this tutorial,并收到以下错误消息:
2017-03-04 22:28:05,284 :Error running WSGI application
2017-03-04 22:28:05,285 :ImportError: No module named 'mysite'
2017-03-04 22:28:05,285 : File "/var/www/iamcsongor_pythonanywhere_com_wsgi.py", line 11, in <module>
2017-03-04 22:28:05,285 : application = get_wsgi_application()
2017-03-04 22:28:05,285 :
2017-03-04 22:28:05,285 : File "/home/iamcsongor/my-first-blog/myvenv/lib/python3.5/site-packages/django/core/wsgi.py", line 13, in get_wsgi_application
2017-03-04 22:28:05,285 : django.setup(set_prefix=False)
2017-03-04 22:28:05,285 :
2017-03-04 22:28:05,285 : File "/home/iamcsongor/my-first-blog/myvenv/lib/python3.5/site-packages/django/__init__.py", line 22, in setup
2017-03-04 22:28:05,286 : configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
2017-03-04 22:28:05,286 :
2017-03-04 22:28:05,286 : File "/home/iamcsongor/my-first-blog/myvenv/lib/python3.5/site-packages/django/conf/__init__.py", line 53, in __getattr__
2017-03-04 22:28:05,286 : self._setup(name)
2017-03-04 22:28:05,286 :
2017-03-04 22:28:05,286 : File "/home/iamcsongor/my-first-blog/myvenv/lib/python3.5/site-packages/django/conf/__init__.py", line 41, in _setup
2017-03-04 22:28:05,287 : self._wrapped = Settings(settings_module)
2017-03-04 22:28:05,287 :
2017-03-04 22:28:05,287 : File "/home/iamcsongor/my-first-blog/myvenv/lib/python3.5/site-packages/django/conf/__init__.py", line 97, in __init__
2017-03-04 22:28:05,287 : mod = importlib.import_module(self.SETTINGS_MODULE)这是我的WSGI文件:
import os
import sys
path = '/home/iamcsongor/my-first-blog/firstweb' # use your own PythonAnywhere username here
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
from django.core.wsgi import get_wsgi_application
from django.contrib.staticfiles.handlers import StaticFilesHandler
application = StaticFilesHandler(get_wsgi_application())我吃了一些screenshots of the code和Git Repo,如果你能帮忙,我将不胜感激。谢谢
发布于 2017-03-05 07:34:33
如错误所示,您的DJANGO_SETTINGS_MODULE环境变量设置为"mysite",但该目录不存在。您的设置文件实际上似乎在"firstweb“中。
发布于 2020-06-08 00:13:10
遵循它
首先,将环境变量保存到项目文件夹中的.env文件中,您可以在Bash控制台中运行类似以下内容,或者使用“文件”选项卡直接编辑.env文件:
cd ~/my-project-dir
echo "export SECRET_KEY=sekritvalue" >> .env
echo "export OTHER_SECRET=somethingelse" >> .env在my- virtualenv -name上将python-dotenv安装到您的virtualenv工作区中
pip install python-dotenv或者,如果您没有使用virtualenv:
pip3.6 install --user python-dotenv如果您正在使用requirements.txt,还可以选择将其添加到您的add中:
echo python-dotenv >> requirements.txt和在wsgi文件中的get_wsgi_application()
import os
from dotenv import load_dotenv
project_folder = os.path.expanduser('~/my-project-dir') # adjust as appropriate
load_dotenv(os.path.join(project_folder, '.env'))并在setting.py文件中进行修改,删除密钥并上传
import os
SECRET_KEY = os.getenv("SECRET_KEY")最后,在bash控制台中执行此操作
set -a; source ~/my-project-dir/.env; set +a
echo 'set -a; source ~/my-project-dir/.env; set +a' >> ~/.virtualenvs/my-project-virtualenv/bin/postactivate全部完成删除wsgi相关错误
https://stackoverflow.com/questions/42601777
复制相似问题