gpt4 book ai didi

python - uwsgi+nginx 后面的 Django 无法设置 cookie

转载 作者:太空宇宙 更新时间:2023-11-03 11:08:50 25 4
gpt4 key购买 nike

我正在为一个副项目膳食计划工具整理一个 PoC。我正在使用在 AWS 上与 nginx 和 uwsgi 一起运行的 django。该网站正在运行并加载页面,但没有 CSRF cookie 传递给浏览器。

CSRF 和 Messages 中间件都已启用,django 调试输出列出了“CSRF_COOKIE”的值,并且我的浏览器启用了 cookie,因此我怀疑 Django 正在尝试设置一个 cookie,该 cookie 正在被 nginx 删除或 uwsgi。

配置信息如下:

uwsgi.ini

[uwsgi]
chdir=/opt/django/mealplanner/src/mealplanner/
module=mealplanner.wsgi:application
master=True
autoload=True
pidfile=/opt/run/mealplanner.pid
vacuum=True
max-requests=5000
socket=/opt/run/mealplanner.sock
chmod-socket=True
harakiri=120
processes=1
home=/opt/django/mealplanner/src
daemonize=/opt/log/uwsgi/mealplanner.log

nginx.conf

user www-data;
worker_processes 1;
pid /opt/run/nginx.pid;

events {
worker_connections 768;
# multi_accept on;
}

http {

##
# Basic Settings
##

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# server_tokens off;

# server_names_hash_bucket_size 64;
# server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

##
# Logging Settings
##

access_log /opt/log/nginx/access.log;
error_log /opt/log/nginx/error.log;

##
# Gzip Settings
##

gzip on;
gzip_disable "msie6";

# gzip_vary on;
gzip_proxied any;
gzip_comp_level 2;
# gzip_buffers 16 8k;
# gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml \
application/xml+rss text/javascript;

server {
listen 80;
# I've also tried the dns name I access the site with as the server name.
server_name ec2-xx-xx-xx-xx.us-west-2.compute.amazonaws.com xx.xx.xx.xx;
client_max_body_size 50M;
set $home /opt/django/mealplanner;
root $home;
location / {
include uwsgi_params;
uwsgi_pass unix://opt/run/mealplanner.sock;
root $home;
}
}

##
# Virtual Host Configs
##

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}

最佳答案

看起来问题可能出在 nginx.conf 中的 server_name。它突然开始工作,我唯一改变的是让 server_name 与网站的域名相匹配。另一方面,将其改回似乎并没有重新引入问题,所以要么我没有正确重新启动 nginx,要么这根本不是问题。

该站点现在正在运行,但这是我对原因和解决方案没有令人满意的理解的情况之一,因此如果有人可以证实这个假设或指出其他问题,我欢迎提供意见。

关于python - uwsgi+nginx 后面的 Django 无法设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11604556/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com