| @@ -0,0 +1,102 @@ | |||
| --- | |||
| date: "2018-05-22T11:00:00+00:00" | |||
| title: "Usage: Reverse Proxies" | |||
| slug: "reverse-proxies" | |||
| weight: 17 | |||
| toc: true | |||
| draft: false | |||
| menu: | |||
| sidebar: | |||
| parent: "usage" | |||
| name: "Reverse Proxies" | |||
| weight: 16 | |||
| identifier: "reverse-proxies" | |||
| --- | |||
| ## Using Nginx as a reverse proxy | |||
| If you want Nginx to serve your Gitea instance you can the following `server` section inside the `http` section of `nginx.conf`: | |||
| ``` | |||
| server { | |||
| listen 80; | |||
| server_name git.example.com; | |||
| location / { | |||
| proxy_pass http://localhost:3000; | |||
| } | |||
| } | |||
| ``` | |||
| ## Using Nginx with a Sub-path as a reverse proxy | |||
| In case you already have a site, and you want Gitea to share the domain name, you can setup Nginx to serve Gitea under a sub-path by adding the following `server` section inside the `http` section of `nginx.conf`: | |||
| ``` | |||
| server { | |||
| listen 80; | |||
| server_name git.example.com; | |||
| location /git/ { # Note: Trailing slash | |||
| proxy_pass http://localhost:3000/; # Note: Trailing slash | |||
| } | |||
| } | |||
| ``` | |||
| Then set `[server] ROOT_URL = http://git.example.com/git/` in your configuration. | |||
| ## Using Apache HTTPD as a reverse proxy | |||
| If you want Apache HTTPD to serve your Gitea instance you can add the following to you Apache HTTPD configuration (usually located at `/etc/apache2/httpd.conf` in Ubuntu): | |||
| ``` | |||
| <VirtualHost *:80> | |||
| ... | |||
| ProxyPreserveHost On | |||
| ProxyRequests off | |||
| ProxyPass / http://localhost:3000/ | |||
| ProxyPassReverse / http://localhost:3000/ | |||
| </VirtualHost> | |||
| ``` | |||
| Note: The following Apache HTTPD mods must be enabled: `proxy`, `proxy_http` | |||
| ## Using Apache HTTPD with a Sub-path as a reverse proxy | |||
| In case you already have a site, and you want Gitea to share the domain name, you can setup Apache HTTPD to serve Gitea under a sub-path by adding the following to you Apache HTTPD configuration (usually located at `/etc/apache2/httpd.conf` in Ubuntu): | |||
| ``` | |||
| <VirtualHost *:80> | |||
| ... | |||
| <Proxy *> | |||
| Order allow,deny | |||
| Allow from all | |||
| </Proxy> | |||
| ProxyPass /git http://localhost:3000 # Note: no trailing slash after either /git or port | |||
| ProxyPassReverse /git http://localhost:3000 # Note: no trailing slash after either /git or port | |||
| </VirtualHost> | |||
| ``` | |||
| Then set `[server] ROOT_URL = http://git.example.com/git/` in your configuration. | |||
| Note: The following Apache HTTPD mods must be enabled: `proxy`, `proxy_http` | |||
| ## Using Caddy with a Sub-path as a reverse proxy | |||
| If you want Caddy to serve your Gitea instance you can add the following server block to your Caddyfile: | |||
| ``` | |||
| git.example.com { | |||
| proxy / http://localhost:3000 | |||
| } | |||
| ``` | |||
| ##### How do I set up a sub-path with Caddy? | |||
| In case you already have a site, and you want Gitea to share the domain name, you can setup Caddy to serve Gitea under a sub-path by adding the following to you server block in your Caddyfile: | |||
| ``` | |||
| git.example.com { | |||
| proxy /git/ http://localhost:3000 # Note: Trailing Slash after /git/ | |||
| } | |||
| ``` | |||