mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-03 21:08:25 +00:00 
			
		
		
		
	Backport #29534 Regression of #24107 Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -21,7 +21,7 @@ var SessionConfig = struct {
 | 
				
			|||||||
	ProviderConfig string
 | 
						ProviderConfig string
 | 
				
			||||||
	// Cookie name to save session ID. Default is "MacaronSession".
 | 
						// Cookie name to save session ID. Default is "MacaronSession".
 | 
				
			||||||
	CookieName string
 | 
						CookieName string
 | 
				
			||||||
	// Cookie path to store. Default is "/". HINT: there was a bug, the old value doesn't have trailing slash, and could be empty "".
 | 
						// Cookie path to store. Default is "/".
 | 
				
			||||||
	CookiePath string
 | 
						CookiePath string
 | 
				
			||||||
	// GC interval time in seconds. Default is 3600.
 | 
						// GC interval time in seconds. Default is 3600.
 | 
				
			||||||
	Gclifetime int64
 | 
						Gclifetime int64
 | 
				
			||||||
@@ -49,7 +49,10 @@ func loadSessionFrom(rootCfg ConfigProvider) {
 | 
				
			|||||||
		SessionConfig.ProviderConfig = path.Join(AppWorkPath, SessionConfig.ProviderConfig)
 | 
							SessionConfig.ProviderConfig = path.Join(AppWorkPath, SessionConfig.ProviderConfig)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	SessionConfig.CookieName = sec.Key("COOKIE_NAME").MustString("i_like_gitea")
 | 
						SessionConfig.CookieName = sec.Key("COOKIE_NAME").MustString("i_like_gitea")
 | 
				
			||||||
	SessionConfig.CookiePath = AppSubURL + "/" // there was a bug, old code only set CookePath=AppSubURL, no trailing slash
 | 
						SessionConfig.CookiePath = AppSubURL
 | 
				
			||||||
 | 
						if SessionConfig.CookiePath == "" {
 | 
				
			||||||
 | 
							SessionConfig.CookiePath = "/"
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	SessionConfig.Secure = sec.Key("COOKIE_SECURE").MustBool(strings.HasPrefix(strings.ToLower(AppURL), "https://"))
 | 
						SessionConfig.Secure = sec.Key("COOKIE_SECURE").MustBool(strings.HasPrefix(strings.ToLower(AppURL), "https://"))
 | 
				
			||||||
	SessionConfig.Gclifetime = sec.Key("GC_INTERVAL_TIME").MustInt64(86400)
 | 
						SessionConfig.Gclifetime = sec.Key("GC_INTERVAL_TIME").MustInt64(86400)
 | 
				
			||||||
	SessionConfig.Maxlifetime = sec.Key("SESSION_LIFE_TIME").MustInt64(86400)
 | 
						SessionConfig.Maxlifetime = sec.Key("SESSION_LIFE_TIME").MustInt64(86400)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -38,6 +38,7 @@ func ProtocolMiddlewares() (handlers []any) {
 | 
				
			|||||||
		})
 | 
							})
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// wrap the request and response, use the process context and add it to the process manager
 | 
				
			||||||
	handlers = append(handlers, func(next http.Handler) http.Handler {
 | 
						handlers = append(handlers, func(next http.Handler) http.Handler {
 | 
				
			||||||
		return http.HandlerFunc(func(resp http.ResponseWriter, req *http.Request) {
 | 
							return http.HandlerFunc(func(resp http.ResponseWriter, req *http.Request) {
 | 
				
			||||||
			ctx, _, finished := process.GetManager().AddTypedContext(req.Context(), fmt.Sprintf("%s: %s", req.Method, req.RequestURI), process.RequestProcessType, true)
 | 
								ctx, _, finished := process.GetManager().AddTypedContext(req.Context(), fmt.Sprintf("%s: %s", req.Method, req.RequestURI), process.RequestProcessType, true)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user