[Django登录在部署(pythonanywhere.com)后不起作用

问题描述 投票:0回答:1

我正在尝试部署Django应用几天。经过大量猜测之后,我的索引页开始工作了。最后,我发现了错误。但是现在它仍然无法正常工作。

这次,我尝试遵循此方法:https://tutorial.djangogirls.org/de/django_installation/https://tutorial.djangogirls.org/de/deploy/#registriere-dich-f%C3%BCr-ein-pythonanywhere-konto

所以我将我的代码上传到Github并公开发布,并在以下URL创建了一个pythonanywhere项目:http://mvanthiel.pythonanywhere.com/catalog/ui/

我还创建了一个虚拟环境并创建了.gitignore文件。

在我的Windows(Dev)主机上,网站按预期运行。在pythonanywhere.com上没有。

Windows开发人员

[在Windows Dev上,我将Projekt内容推送到git,如操作方法中所述。

此后,我尝试了两种不同的方法:

pythonanywhere.com

在pythonanywhere.com上,我安装了pip模块。pip3.6 install --user pythonanywhere然后我尝试使用以下命令在pythonanywhere.com上自动配置其余部分:pa_autoconfigure_django.py --python=3.6 https://github.com/HigeMynx/onboarding.git该网站现在可以在线使用,我在外壳中创建了Django超级用户。

但是,当我尝试登录(在管理面板上的网站上)或注册时,不断出现此错误页面:enter image description here

SelfHosted Linux VM

我添加了一个服务帐户,并删除并安装了一些软件包。之后,我克隆了存储库并创建并激活了虚拟环境。比起我确保安装pip并保持最新状态,并确定了一些pip要求。

sudo adduser onboarding
sudo usermod -aG sudo onboarding
su onboarding 
sudo apt purge *python2.7-minimal* -y && sudo apt purge *python2.7* -y && sudo apt purge python2.7-minimal python2.7 -y
sudo apt-get update -y && sudo apt-get upgrade -V -y && sudo apt-get autoremove -y && sudo apt-get install virtualenv python3 python3-pip python3-venv python3-virtualenv python3.6-venv -y
git clone https://github.com/HigeMynx/onboarding.git
python3 -m venv myvenv
source myvenv/bin/activate
python3 -m pip install --upgrade pip
pip3 install -r requirements.txt

Requirements.txt

autopep8~=1.4.4
coverage~=4.5.4
Django~=2.2.4
docutils~=0.14
et-xmlfile~=1.0.1
isort~=4.3.21
openpyxl~=2.6.0
virtualenv~=16.7.3

之后,我创建了超级用户并迁移了数据库,依此类推:

sudo python3 manage.py shell
sudo python3 manage.py makemigrations -v3
sudo python3 manage.py migrate -v3
sudo isort -rc .
sudo python3 manage.py collectstatic --noinput -v3
sudo python3 manage.py runserver 192.168.18.10:80 -v3

但是当我尝试登录(在网站或管理面板上)或注册时,我始终没有得到任何错误提示:所有发生的事情是,该网站退回到了索引页面,但除此之外,它什么也没做。

如果需要,我可以让您访问pythonanywhere.com bash,如果需要,您可以查看我的git代码。

请帮助我。

python django github pythonanywhere django-deployment
1个回答
0
投票

使用您的PythonAnywhere页面,我可以通过转到http://mvanthiel.pythonanywhere.com/admin并使用test / test作为用户/通过来复制CSRF错误。

如果将其切换为HTTPS,则会收到身份验证错误,而不是CSRF错误。尝试使用HTTPS代替HTTP,看看是否可以解决您的问题。

我相信此行为是根据您的设置文件中的CSRF_COOKIE_SECURE选项驱动的:https://docs.djangoproject.com/en/2.2/ref/settings/#csrf-cookie-secure

© www.soinside.com 2019 - 2024. All rights reserved.