zor*_*ran 2 django gunicorn swagger
我正在 Gunicorn 上运行 Django RF 后端应用程序。当尝试从 Swagger 获取数据时,我收到“TypeError:无法获取”在控制台中报告此错误:
混合内容:“https://****.com/swagger/”页面是通过 HTTPS 加载的,但请求了不安全的资源“http://****.com/v2/products/”。该请求已被阻止;内容必须通过 HTTPS 提供。
我尝试了我发现并能想到的所有内容,包括:
secure_scheme_headers = {
'X-FORWARDED-PROTOCOL': 'ssl',
'X-FORWARDED-PROTO': 'https',
'X-FORWARDED-SSL': 'on'}
Run Code Online (Sandbox Code Playgroud)
到古尼康
和
USE_X_FORWARDED_HOST = True
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
Run Code Online (Sandbox Code Playgroud)
到 Django 设置。
但没有任何帮助。
Swagger for Django:drf-yasg==1.12.1
我找到了解决方案。在 Django 设置中添加
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True
# Security Headers
SECURE_CONTENT_TYPE_NOSNIFF = True
SECURE_HSTS_INCLUDE_SUBDOMAINS = True
SECURE_HSTS_PRELOAD = True
SECURE_HSTS_SECONDS = 3600
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3085 次 |
| 最近记录: |