首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Kiwi的密码重置通过“忘记密码”链接显示500内部服务器错误。这是common.py设置的问题吗?

使用Kiwi的密码重置通过“忘记密码”链接显示500内部服务器错误。这是common.py设置的问题吗?
EN

Stack Overflow用户
提问于 2019-08-08 10:27:53
回答 2查看 1K关注 0票数 1

最近,由于可能的错误,我不得不更改另一个用户的密码。使用登录页面的“忘记密码”显示了一个500错误。纵观Kiwi的仪表板、文档和github讨论,据说用户只能更改自己的密码。而我已经通过以下方法解决了这个问题(无法更改密码)

代码语言:javascript
复制
docker exec -it kiwi_web /Kiwi/manage.py changepassword userNameHere 

,我想知道最初的500个错误的原因是由于猕猴桃的common.py文件中的设置问题,还是完全是别的原因。

试过

代码语言:javascript
复制
https://docs.djangoproject.com/en/2.2/topics/auth/default/
https://kiwitcms.readthedocs.io/en/latest/configuration.html
https://github.com/kiwitcms/Kiwi/issues/610
https://docs.djangoproject.com/en/2.0/topics/email/#quick-example

EMAIL_BACKEND = 'django_ses.SESBackend'
AWS_SES_ACCESS_KEY_ID = 'key'
AWS_SES_SECRET_ACCESS_KEY = 'key'
EMAIL_HOST = ''
EMAIL_PORT = 25
EMAIL_FROM = 'mail'
DEFAULT_FROM_EMAIL = 'kiwi@example.com'
EMAIL_SUBJECT_PREFIX = '[Kiwi-TCMS] '

预期能够使用针对用户设置的电子邮件地址的密码重置。

实际是500错误。

是新来的。提前谢谢。

编辑:

这些日志?:

代码语言:javascript
复制
IP - - [09/Aug/2019:02:52:07 +0000] "GET /accounts/passwordreset/ HTTP/1.1" 200 1944 "https://kiwitcms.domain.com/accounts/login/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36"
IP  - - [09/Aug/2019:02:52:08 +0000] "GET / HTTP/1.1" 302 - "-" "ELB-HealthChecker/2.0"
IP  - - [09/Aug/2019:02:52:08 +0000] "POST /accounts/passwordreset/ HTTP/1.1" 500 8241 "https://kiwitcms.domain.com/accounts/passwordreset/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36"

此外,即使在Product.py的调试是True之后,跟踪似乎也不起作用。这就是你所指的bug吗?

从另一个角度问:密码重置功能是在安装Kiwi之后工作还是我必须配置它,如果是,配置所需的是什么。

编辑2:这些日志相关吗?旧docker logs container | grep -i error

代码语言:javascript
复制
[Tue Aug 13 06:59:25.408480 2019] [ssl:warn] [pid 8] AH01909: RSA certificate configured for 172.22.0.3:8443 does NOT include an ID which matches the server name
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.22.0.3. Set the 'ServerName' directive globally to suppress this message
[Tue Aug 13 06:59:25.429943 2019] [lbmethod_heartbeat:notice] [pid 8] AH02282: No slotmem from mod_heartmonitor
[Tue Aug 13 06:59:25.430535 2019] [ssl:warn] [pid 8] AH01909: RSA certificate configured for 172.22.0.3:443 does NOT include an ID which matches the server name
[Tue Aug 13 06:59:25.430689 2019] [ssl:warn] [pid 8] AH01909: RSA certificate configured for 172.22.0.3:8443 does NOT include an ID which matches the server name
[Tue Aug 13 06:59:25.433497 2019] [mpm_prefork:notice] [pid 8] AH00163: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_wsgi/4.6.7 Python/3.6 configured -- resuming normal operations
[Tue Aug 13 06:59:25.433519 2019] [core:notice] [pid 8] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'

我在本地测试了它,而没有更改公共文件和产品文件,所以它不会被错误配置。在迁移DB模式和创建超级用户之间,是否需要额外的步骤来配置电子邮件后端?

编辑3:最后从oritgaon获得了跟踪显示

代码语言:javascript
复制
https://github.com/kiwitcms/Kiwi/issues/631

回溯:

将"/venv/lib64/python3.6/site-packages/django/core/handlers/exception.py“文件保存在内部34中。响应=get_response(请求)

"/venv/lib64/python3.6/site-packages/django/core/handlers/base.py“文件在_get_response 115中。响应= self.process_exception_by_middleware(e,请求)

"/venv/lib64/python3.6/site-packages/django/core/handlers/base.py“文件在_get_response 113中。response =wrapped_callback(请求、*callback_args、**callback_kwargs)

视图71中的"/venv/lib64/python3.6/site-packages/django/views/generic/base.py“文件。返回self.dispatch(请求,*args,**kwargs)

"/venv/lib64/python3.6/site-packages/django/utils/decorators.py“文件在_wrapper 45中。返回bound_method(*args,**kwargs)

"/venv/lib64/python3.6/site-packages/django/utils/decorators.py“文件在_wrapped_view 142中。响应=view_func(请求,*args,**kwargs)

在调度220号中文件"/venv/lib64/python3.6/site-packages/django/contrib/auth/views.py“。返回超级().dispatch(*args,**kwargs)

在分派97中文件"/venv/lib64/python3.6/site-packages/django/views/generic/base.py“。返回处理程序(请求,*args,**kwargs)

在后142号文件"/venv/lib64/python3.6/site-packages/django/views/generic/edit.py“。返回self.form_valid(表格)

"/venv/lib64/python3.6/site-packages/django/contrib/auth/views.py“文件在form_valid 233中。form.save(**opts)

在保存95中文件"/venv/lib64/python3.6/site-packages/tcms/kiwi_auth/forms.py“。extra_email_context,

文件"/venv/lib64/python3.6/site-packages/django/contrib/auth/forms.py“在保存295号。电子邮件,html_email_template_name=html_email_template_name,

"/venv/lib64/python3.6/site-packages/django/contrib/auth/forms.py“文件在send_mail 250中。email_message.send()

发送291中的"/venv/lib64/python3.6/site-packages/django/core/mail/message.py“文件。返回self.get_connection(fail_silently).send_messages(self)

"/venv/lib64/python3.6/site-packages/django/core/mail/backends/smtp.py“文件在send_messages 103中。new_conn_created = self.open()

在打开63号文件"/venv/lib64/python3.6/site-packages/django/core/mail/backends/smtp.py“。self.connection = self.connection_class(self.host,self.port,**connection_params)

文件"/opt/rh/rh-python36/root/usr/lib64/python3.6/smtplib.py“在init 251。(代码,msg) =self.connect(主机、端口)

在connect 336中输入"/opt/rh/rh-python36/root/usr/lib64/python3.6/smtplib.py“文件。self.sock =self._get_socket(主机、端口、self.timeout)

"/opt/rh/rh-python36/root/usr/lib64/python3.6/smtplib.py“文件在_get_socket 307中。self.source_address)

"/opt/rh/rh-python36/root/usr/lib64/python3.6/socket.py“文件在create_connection 724中。提高错误

文件"/opt/rh/rh-python36/root/usr/lib64/python3.6/socket.py“在create_connection 713。sock.connect(sa)

异常类型: OSError at /accounts/password重置/异常值: Errno 99无法分配请求的地址

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-16 07:58:30

对于任何面临这个问题的人,首先要通过docker.html

显示回溯:

  • 在Kiwi下创建local_settings.py并键入: DEBUG =真
  • 保存
  • 在docker-Compose.yml中:将以下行按https://github.com/kiwitcms/Kiwi/issues/631添加到卷中 ./local_settings.py:/venv/lib64/python3.6/site-packages/tcms/settings/local_settings.py
  • 运行“码头-组成下来”,然后“码头-组成-d”。

为注册和密码重置启用电子邮件:

  • 我使用的配置需要一个启用了2FA的gmail帐户以及集。
  • 在local_settings.py中:在下面添加代码。 EMAIL_HOST = 'smtp.gmail.com‘ EMAIL_PORT = '587‘ EMAIL_HOST_USER = 'yourGmailAccountHere‘ EMAIL_HOST_PASSWORD = 'yourAppPasswordHere‘ EMAIL_USE_TLS =真
  • 保存并重新组合。

总之:我安装的猕猴桃需要配置的电子邮件设置的密码重置和注册电子邮件的工作。

票数 2
EN

Stack Overflow用户

发布于 2019-08-13 07:40:31

FYI我打开了一个特性请求来添加一个故障排除命令。你可以在这里投票:https://github.com/kiwitcms/Kiwi/issues/1070

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57410496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档