Nginx
1 前言
一个问题,一篇文章,一出故事。
笔者在NextCloud生产环境中需要实现首次登录显示公告页,由于用户首次登录会默认进入“/index.php/apps/dashboard”页面面,因此笔者希望首次进入dashboard页面后自动跳转到公告页(“/index.php/apps/announcementcenter”),而后面再次进入保留在“dashboard”页面,因此整理此文。
2 最佳实践
2.1 增加配置
vim /etc/nginx/conf.d/nextcloud.cmdschool.org_443.conf
加入如下配置,
map $http_cookie $first_visit { default 0; "~*my_cookie=([^;]+)" $1; } server { #... add_header Set-Cookie "my_cookie=$first_visit; Path=/; HttpOnly"; location /index.php/apps/dashboard { if ($first_visit = 0) { add_header Set-Cookie "my_cookie=1; Path=/; HttpOnly"; return 302 /index.php/apps/announcementcenter/; } #... } }
2.2 测试并重载使配置生效
nginx -t systemctl reload nginx.serice
没有评论