mirror of
https://github.com/verdaccio/verdaccio.git
synced 2024-12-23 22:27:34 -05:00
66b2175584
* New translations ansible.md (Chinese Traditional) * New translations uplinks.md (Chinese Traditional, Hong Kong) * New translations ssl.md (Urdu (Pakistan)) * New translations test.md (Chinese Traditional) * New translations test.md (Chinese Traditional, Hong Kong) * New translations test.md (Portuguese, Brazilian) * New translations test.md (Spanish) * New translations test.md (Urdu (Pakistan)) * New translations uplinks.md (Chinese Traditional) * New translations uplinks.md (Portuguese, Brazilian) * New translations ssl.md (Portuguese, Brazilian) * New translations uplinks.md (Spanish) * New translations uplinks.md (Urdu (Pakistan)) * New translations use-cases.md (Chinese Traditional) * New translations use-cases.md (Chinese Traditional, Hong Kong) * New translations use-cases.md (Portuguese, Brazilian) * New translations use-cases.md (Spanish) * New translations use-cases.md (Urdu (Pakistan)) * New translations ssl.md (Spanish) * New translations ssl.md (Chinese Traditional, Hong Kong) * New translations web.md (Chinese Traditional, Hong Kong) * New translations reverse-proxy.md (Chinese Traditional, Hong Kong) * New translations protect-your-dependencies.md (Urdu (Pakistan)) * New translations repositories.md (Chinese Traditional) * New translations repositories.md (Chinese Traditional, Hong Kong) * New translations repositories.md (Portuguese, Brazilian) * New translations repositories.md (Spanish) * New translations repositories.md (Urdu (Pakistan)) * New translations reverse-proxy.md (Chinese Traditional) * New translations reverse-proxy.md (Portuguese, Brazilian) * New translations ssl.md (Chinese Traditional) * New translations reverse-proxy.md (Spanish) * New translations reverse-proxy.md (Urdu (Pakistan)) * New translations server.md (Chinese Traditional) * New translations server.md (Chinese Traditional, Hong Kong) * New translations server.md (Portuguese, Brazilian) * New translations server.md (Spanish) * New translations server.md (Urdu (Pakistan)) * New translations web.md (Chinese Traditional) * New translations web.md (Portuguese, Brazilian) * New translations protect-your-dependencies.md (Portuguese, Brazilian) * New translations repositories.md (Chinese Simplified) * New translations install.md (Chinese Simplified) * New translations kubernetes.md (Chinese Simplified) * New translations logger.md (Chinese Simplified) * New translations notifications.md (Chinese Simplified) * New translations packages.md (Chinese Simplified) * New translations plugins.md (Chinese Simplified) * New translations protect-your-dependencies.md (Chinese Simplified) * New translations reverse-proxy.md (Chinese Simplified) * New translations home.md (Chinese Simplified) * New translations server.md (Chinese Simplified) * New translations ssl.md (Chinese Simplified) * New translations test.md (Chinese Simplified) * New translations uplinks.md (Chinese Simplified) * New translations use-cases.md (Chinese Simplified) * New translations web.md (Chinese Simplified) * New translations windows.md (Chinese Simplified) * New translations iis-server.md (Chinese Simplified) * New translations docker.md (Chinese Simplified) * New translations web.md (Spanish) * New translations web.md (Urdu (Pakistan)) * New translations windows.md (Chinese Traditional) * New translations windows.md (Chinese Traditional, Hong Kong) * New translations windows.md (Portuguese, Brazilian) * New translations windows.md (Spanish) * New translations windows.md (Urdu (Pakistan)) * New translations dev-plugins.md (Chinese Simplified) * New translations ansible.md (Chinese Simplified) * New translations auth.md (Chinese Simplified) * New translations cli.md (Chinese Simplified) * New translations config.md (Chinese Simplified) * New translations contributing.md (Chinese Simplified) * New translations protect-your-dependencies.md (Spanish) * New translations protect-your-dependencies.md (Chinese Traditional, Hong Kong) * New translations ansible.md (Chinese Traditional, Hong Kong) * New translations dev-plugins.md (Chinese Traditional) * New translations config.md (Spanish) * New translations config.md (Urdu (Pakistan)) * New translations contributing.md (Chinese Traditional) * New translations contributing.md (Chinese Traditional, Hong Kong) * New translations contributing.md (Portuguese, Brazilian) * New translations contributing.md (Spanish) * New translations contributing.md (Urdu (Pakistan)) * New translations dev-plugins.md (Chinese Traditional, Hong Kong) * New translations config.md (Chinese Traditional, Hong Kong) * New translations dev-plugins.md (Portuguese, Brazilian) * New translations dev-plugins.md (Spanish) * New translations dev-plugins.md (Urdu (Pakistan)) * New translations docker.md (Chinese Traditional) * New translations docker.md (Chinese Traditional, Hong Kong) * New translations docker.md (Portuguese, Brazilian) * New translations docker.md (Spanish) * New translations config.md (Portuguese, Brazilian) * New translations config.md (Chinese Traditional) * New translations home.md (Chinese Traditional) * New translations auth.md (Urdu (Pakistan)) * New translations ansible.md (Portuguese, Brazilian) * New translations ansible.md (Spanish) * New translations ansible.md (Urdu (Pakistan)) * New translations auth.md (Chinese Traditional) * New translations auth.md (Chinese Traditional, Hong Kong) * New translations auth.md (Portuguese, Brazilian) * New translations auth.md (Spanish) * New translations cli.md (Urdu (Pakistan)) * New translations cli.md (Chinese Traditional) * New translations cli.md (Chinese Traditional, Hong Kong) * New translations cli.md (Portuguese, Brazilian) * New translations cli.md (Spanish) * New translations docker.md (Urdu (Pakistan)) * New translations home.md (Chinese Traditional, Hong Kong) * New translations protect-your-dependencies.md (Chinese Traditional) * New translations packages.md (Chinese Traditional, Hong Kong) * New translations logger.md (Urdu (Pakistan)) * New translations notifications.md (Chinese Traditional) * New translations notifications.md (Chinese Traditional, Hong Kong) * New translations notifications.md (Portuguese, Brazilian) * New translations notifications.md (Spanish) * New translations notifications.md (Urdu (Pakistan)) * New translations packages.md (Chinese Traditional) * New translations packages.md (Portuguese, Brazilian) * New translations logger.md (Portuguese, Brazilian) * New translations packages.md (Spanish) * New translations packages.md (Urdu (Pakistan)) * New translations plugins.md (Chinese Traditional) * New translations plugins.md (Chinese Traditional, Hong Kong) * New translations plugins.md (Portuguese, Brazilian) * New translations plugins.md (Spanish) * New translations plugins.md (Urdu (Pakistan)) * New translations logger.md (Spanish) * New translations logger.md (Chinese Traditional, Hong Kong) * New translations home.md (Portuguese, Brazilian) * New translations install.md (Chinese Traditional) * New translations home.md (Spanish) * New translations home.md (Urdu (Pakistan)) * New translations iis-server.md (Chinese Traditional) * New translations iis-server.md (Chinese Traditional, Hong Kong) * New translations iis-server.md (Portuguese, Brazilian) * New translations iis-server.md (Spanish) * New translations iis-server.md (Urdu (Pakistan)) * New translations install.md (Chinese Traditional, Hong Kong) * New translations logger.md (Chinese Traditional) * New translations install.md (Portuguese, Brazilian) * New translations install.md (Spanish) * New translations install.md (Urdu (Pakistan)) * New translations kubernetes.md (Chinese Traditional) * New translations kubernetes.md (Chinese Traditional, Hong Kong) * New translations kubernetes.md (Portuguese, Brazilian) * New translations kubernetes.md (Spanish) * New translations kubernetes.md (Urdu (Pakistan))
88 lines
No EOL
2.3 KiB
Markdown
88 lines
No EOL
2.3 KiB
Markdown
---
|
|
id: reverse-proxy
|
|
title: Reverse Proxy Setup
|
|
---
|
|
## Apache
|
|
|
|
Apache and mod_proxy should not decode/encode slashes and leave them as they are:
|
|
|
|
<VirtualHost *:80>
|
|
AllowEncodedSlashes NoDecode
|
|
ProxyPass /npm http://127.0.0.1:4873 nocanon
|
|
ProxyPassReverse /npm http://127.0.0.1:4873
|
|
</VirtualHost>
|
|
|
|
|
|
### Configuration with SSL
|
|
|
|
config.yaml
|
|
|
|
```yaml
|
|
url_prefix: https://npm.your.domain.com
|
|
```
|
|
|
|
Apache virtual server configuration
|
|
|
|
apacheconfig
|
|
<IfModule mod_ssl.c>
|
|
<VirtualHost *:443>
|
|
ServerName npm.your.domain.com
|
|
SSLEngine on
|
|
SSLCertificateFile /etc/letsencrypt/live/npm.your.domain.com/fullchain.pem
|
|
SSLCertificateKeyFile /etc/letsencrypt/live/npm.your.domain.com/privkey.pem
|
|
SSLProxyEngine On
|
|
ProxyRequests Off
|
|
ProxyPreserveHost On
|
|
AllowEncodedSlashes NoDecode
|
|
ProxyPass / http://127.0.0.1:4873 nocanon
|
|
ProxyPassReverse / http://127.0.0.1:4873
|
|
</VirtualHost>
|
|
</IfModule>
|
|
|
|
|
|
## Nginx
|
|
|
|
server {
|
|
listen 80 default_server;
|
|
location / {
|
|
proxy_pass http://127.0.0.1:4873/;
|
|
proxy_set_header Host $host;
|
|
}
|
|
}
|
|
|
|
|
|
## Run behind reverse proxy with different domain and port
|
|
|
|
If you run verdaccio behind reverse proxy, you may noticed all resource file served as relaticve path, like `http://127.0.0.1:4873/-/static`
|
|
|
|
To resolve this issue, you should send real domain and port to verdaccio with `Host` heade
|
|
|
|
Nginx configure should look like this:
|
|
|
|
```nginx
|
|
location / {
|
|
proxy_pass http://127.0.0.1:4873/;
|
|
proxy_set_header Host $host:$server_port;
|
|
proxy_set_header X-Forwarded-For $remote_addr;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
}
|
|
```
|
|
|
|
For this case, `url_prefix` should NOT set in verdaccio config
|
|
|
|
* * *
|
|
|
|
or a sub-directory installation:
|
|
|
|
```nginx
|
|
location ~ ^/verdaccio/(.*)$ {
|
|
proxy_pass http://127.0.0.1:4873/$1;
|
|
proxy_set_header Host $host:$server_port;
|
|
proxy_set_header X-Forwarded-For $remote_addr;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
}
|
|
```
|
|
|
|
For this case, `url_prefix` should set to `/verdaccio/`
|
|
|
|
> Note: There is a Slash after install path (`https://your-domain:port/vardaccio/`)! |