hyperf / hyperf/hyperf-docker

请问一下使用nginx反向代理后sessionid每次请求都会改变

Abierto
#70 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Dockerfile
Estrellas
348
Forks
201
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Nginx
`
upstream hyperf {
ip_hash; # 启用会话保持
# Hyperf HTTP Server 的 IP 及 端口
server 127.0.0.1:9581;
}

server {
listen 80;
server_name www.ascore.local;

charset utf-8;

access_log /usr/local/var/log/nginx/ascore/access.log;
error_log /usr/local/var/log/nginx/ascore/error.log;

# 忽略 favicon.ico 请求,直接反向代理给 Hyperf
location = /favicon.ico {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cookie_path / "/; secure; HttpOnly; SameSite=Lax";
proxy_pass http://hyperf;
}

# 处理 CSS 请求,直接反向代理给 Hyperf
location ~* \.css$ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cookie_path / "/; secure; HttpOnly; SameSite=Lax";
proxy_pass http://hyperf;
}

# 处理 JS 请求,直接反向代理给 Hyperf
location ~* \.js$ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cookie_path / "/; secure; HttpOnly; SameSite=Lax";
proxy_pass http://hyperf;
}

# 处理图片请求,直接反向代理给 Hyperf
location ~* \.(jpg|jpeg|png|gif|svg)$ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cookie_path / "/; secure; HttpOnly; SameSite=Lax";
proxy_pass http://hyperf;
}

location / {
# 重写规则
if ($request_uri ~* ^/en(/|$)) {
rewrite ^/(.*)$ /404 break;
}
rewrite ^/(.*)/$ /$1 permanent;
rewrite ^/(en|hi)$ /$1 break;
rewrite ^/(en|hi)/(.*)$ /$1/$2 break;
rewrite ^/$ /en last;
if ($request_uri !~* ^/(en|hi)/) {
rewrite ^/(.*)$ /en/$1 last;
}
# 将客户端的 Host 和 IP 信息一并转发到对应节点
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Cookie $http_cookie; # 保持原有的Cookie

# 转发Cookie,设置 SameSite
proxy_cookie_path / "/; secure; HttpOnly; SameSite=Lax";

# 执行代理访问真实服务器
proxy_pass http://hyperf;
}
}
`
session
`return [
'handler' => Handler\FileHandler::class,
'options' => [
'connection' => 'default',
'path' => BASE_PATH . '/runtime/session',
'gc_maxlifetime' => 1200,
'session_name' => 'HYPERF_SESSION_ID',
'domain' => null,
'cookie_lifetime' => 5 * 60 * 60,
'cookie_same_site' => 'lax',
],
];`

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.