summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/content/doc/usage/reverse-proxies.en-us.md16
-rw-r--r--docs/content/doc/usage/reverse-proxies.zh-cn.md19
-rw-r--r--routers/api/v1/api.go2
-rw-r--r--routers/api/v1/org/member.go2
-rw-r--r--routers/web/user/notification.go3
5 files changed, 22 insertions, 20 deletions
diff --git a/docs/content/doc/usage/reverse-proxies.en-us.md b/docs/content/doc/usage/reverse-proxies.en-us.md
index 5f1e6685ec..9a2552b711 100644
--- a/docs/content/doc/usage/reverse-proxies.en-us.md
+++ b/docs/content/doc/usage/reverse-proxies.en-us.md
@@ -43,13 +43,15 @@ server {
listen 80;
server_name git.example.com;
- location /git/ { # Note: Trailing slash
- proxy_pass http://localhost:3000/; # Note: Trailing slash
+ # Note: Trailing slash
+ location /git/ {
+ # Note: Trailing slash
+ proxy_pass http://localhost:3000/;
}
}
```
-Then set `[server] ROOT_URL = http://git.example.com/git/` in your configuration.
+Then you **MUST** set something like `[server] ROOT_URL = http://git.example.com/git/` correctly in your configuration.
## Nginx and serve static resources directly
@@ -139,11 +141,10 @@ If you want Apache HTTPD to serve your Gitea instance, you can add the following
ProxyRequests off
AllowEncodedSlashes NoDecode
ProxyPass / http://localhost:3000/ nocanon
- ProxyPassReverse / http://localhost:3000/
</VirtualHost>
```
-Note: The following Apache HTTPD mods must be enabled: `proxy`, `proxy_http`
+Note: The following Apache HTTPD mods must be enabled: `proxy`, `proxy_http`.
If you wish to use Let's Encrypt with webroot validation, add the line `ProxyPass /.well-known !` before `ProxyPass` to disable proxying these requests to Gitea.
@@ -161,13 +162,12 @@ In case you already have a site, and you want Gitea to share the domain name, yo
AllowEncodedSlashes NoDecode
# Note: no trailing slash after either /git or port
ProxyPass /git http://localhost:3000 nocanon
- ProxyPassReverse /git http://localhost:3000
</VirtualHost>
```
-Then set `[server] ROOT_URL = http://git.example.com/git/` in your configuration.
+Then you **MUST** set something like `[server] ROOT_URL = http://git.example.com/git/` correctly in your configuration.
-Note: The following Apache HTTPD mods must be enabled: `proxy`, `proxy_http`
+Note: The following Apache HTTPD mods must be enabled: `proxy`, `proxy_http`.
## Caddy
diff --git a/docs/content/doc/usage/reverse-proxies.zh-cn.md b/docs/content/doc/usage/reverse-proxies.zh-cn.md
index b2425f8d5c..741f739dbd 100644
--- a/docs/content/doc/usage/reverse-proxies.zh-cn.md
+++ b/docs/content/doc/usage/reverse-proxies.zh-cn.md
@@ -37,13 +37,15 @@ server {
listen 80;
server_name git.example.com;
- location /git/ { # Note: Trailing slash
- proxy_pass http://localhost:3000/; # Note: Trailing slash
+ # 注意: /git/ 最后需要有一个路径符号
+ location /git/ {
+ # 注意: 反向代理后端 URL 的最后需要有一个路径符号
+ proxy_pass http://localhost:3000/;
}
}
```
-然后在您的 Gitea 配置文件中添加 `[server] ROOT_URL = http://git.example.com/git/`。
+然后您**必须**在 Gitea 的配置文件中正确的添加类似 `[server] ROOT_URL = http://git.example.com/git/` 的配置项。
## 使用 Apache HTTPD 作为反向代理服务
@@ -56,7 +58,6 @@ server {
ProxyRequests off
AllowEncodedSlashes NoDecode
ProxyPass / http://localhost:3000/ nocanon
- ProxyPassReverse / http://localhost:3000/
</VirtualHost>
```
@@ -74,13 +75,12 @@ server {
Allow from all
</Proxy>
AllowEncodedSlashes NoDecode
- # Note: no trailing slash after either /git or port
+ # 注意: 路径和 URL 后面都不要写路径符号 '/'
ProxyPass /git http://localhost:3000 nocanon
- ProxyPassReverse /git http://localhost:3000
</VirtualHost>
```
-然后在您的 Gitea 配置文件中添加 `[server] ROOT_URL = http://git.example.com/git/`。
+然后您**必须**在 Gitea 的配置文件中正确的添加类似 `[server] ROOT_URL = http://git.example.com/git/` 的配置项。
注:必须启用以下 Apache HTTPD 组件:`proxy`, `proxy_http`
@@ -100,8 +100,9 @@ git.example.com {
```
git.example.com {
- proxy /git/ http://localhost:3000 # Note: Trailing Slash after /git/
+ # 注意: 路径 /git/ 最后需要有路径符号
+ proxy /git/ http://localhost:3000
}
```
-然后在您的 Gitea 配置文件中添加 `[server] ROOT_URL = http://git.example.com/git/`。
+然后您**必须**在 Gitea 的配置文件中正确的添加类似 `[server] ROOT_URL = http://git.example.com/git/` 的配置项。
diff --git a/routers/api/v1/api.go b/routers/api/v1/api.go
index d11bbf3c06..d915b76f78 100644
--- a/routers/api/v1/api.go
+++ b/routers/api/v1/api.go
@@ -576,7 +576,7 @@ func Routes(sessioner func(http.Handler) http.Handler) *web.Route {
// Miscellaneous
if setting.API.EnableSwagger {
m.Get("/swagger", func(ctx *context.APIContext) {
- ctx.Redirect("/api/swagger")
+ ctx.Redirect(setting.AppSubURL + "/api/swagger")
})
}
m.Get("/version", misc.Version)
diff --git a/routers/api/v1/org/member.go b/routers/api/v1/org/member.go
index 97940d5925..a6f140c38f 100644
--- a/routers/api/v1/org/member.go
+++ b/routers/api/v1/org/member.go
@@ -159,7 +159,7 @@ func IsMember(ctx *context.APIContext) {
}
}
- redirectURL := setting.AppURL + "api/v1/orgs/" + ctx.Org.Organization.Name + "/public_members/" + userToCheck.Name
+ redirectURL := setting.AppSubURL + "/api/v1/orgs/" + ctx.Org.Organization.Name + "/public_members/" + userToCheck.Name
ctx.Redirect(redirectURL, 302)
}
diff --git a/routers/web/user/notification.go b/routers/web/user/notification.go
index ec3395cbc1..080ec4b582 100644
--- a/routers/web/user/notification.go
+++ b/routers/web/user/notification.go
@@ -8,6 +8,7 @@ import (
"errors"
"fmt"
"net/http"
+ "net/url"
"strings"
"code.gitea.io/gitea/models"
@@ -86,7 +87,7 @@ func getNotifications(c *context.Context) {
// redirect to last page if request page is more than total pages
pager := context.NewPagination(int(total), perPage, page, 5)
if pager.Paginater.Current() < page {
- c.Redirect(fmt.Sprintf("/notifications?q=%s&page=%d", c.FormString("q"), pager.Paginater.Current()))
+ c.Redirect(fmt.Sprintf("%s/notifications?q=%s&page=%d", setting.AppSubURL, url.QueryEscape(c.FormString("q")), pager.Paginater.Current()))
return
}