Hi,
I´ve setup a external server (freeBSD) and installed nginx there to proxy all traffic for confluence.domain.tld to atlassian.domain.tld:8090/confluence. And this doensn´t work :(
Context-path is setup according to this how-to:
https://confluence.atlassian.com/confkb/how-to-change-the-confluence-context-path-707985922.html
And that works great :)
Now nginx comes into play. I configured ist like this:
But nginx passes nothing to the given address. All that I receive is the hello-Page from nginx.
This is the config i used:
server {
listen 80;
server_name confluence.domain.tld
client_max_body 100m;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://atlassian.domain.tld:8090/confluence;
DNS Record are working. Any ideas?
add the context path makes no difference in how the requested site behaves in the browser :(
A colleague with more nginx experience suggests that you try with one server block:
http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; server { listen 80; server_name confluence.domain.de client_max_body 100m; location /confluence { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://atlassian.domain.de:8090/confluence; } location /synchrony { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://atlassian.domain:8091/synchrony; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; } } }
Another colleague suggested we check the proxy logs as they may give us a better hint.
I look forward to hearing how it works with one server block as well as anything you find in the nginx logs.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
OK, I understand Synchrony and its context path - thanks.
Here is my nginx.conf that should proxy "confluence.domain.de" to "atlassian.domain.de:8090/confluence"
worker_processes 4;
pid /var/run/nginx.pid;
events {
worker_connections 768;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
server {
listen webproxy.domain.de:80;
server_name webproxy.domain.de;
root /usr/local/www/nginx;
index index.html index.htm;
location / {
try_files $uri &uri/ /index.html;
}
}
server {
listen 80;
server_name confluence.domain.de
client_max_body 100m;
location /confluence {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://atlassian.domain.de:8090;
}
location /synchrony {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://atlassian.domain:8091/synchrony;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}
}
DNS-Records for both, the origin and target adress are set and can be resolved by the machine that runs nginx
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I am not an nginx expert but I did see something that may be an issue. The example config uses the context path on the proxy_pass parameter, where yours doesn't:
Example:
proxy_pass http://localhost:8090/confluence;
Your config:
proxy_pass http://atlassian.domain.de:8090;
Please try with the context path on the proxy_pass line and let me know what happens.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ann,
thanks for your reply. I can´t find any detailed instructions for setting up synchrony's contextpath.
In the Guide I can find the following statement:
For Confluence 6.0 or later we also need to include Synchrony, the service that powers collaborative editing, which listens on port 8091 with the context path /synchrony.
But where do I configure synchrony? Where is the installation Path of it?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
And the nginx proxy_pass still doesn´t work. All I get with the sub.domain.tld ist welcome Page from nginx.
:(
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I am sorry to hear that the proxy isn't directing requests as expected.
Synchrony already has the context path /synchrony and port 8091. It is installed with Confluence 6.x or during an upgrade to 6.x or higher.
Please post your new nginx config, in case I can spot something that would explain the issue.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
If you set up the context path /confluence the location in NGINX needs to be location /confluence.
If you are using 6.x or above you will need a proxy location directive for Synchrony as well, to support collaborative editing. Here is the example from the guide you linked, please compare to your configuration to find any discrepancies: How to use NGINX to proxy requests for Confluence
server {
listen www.example.com:80;
server_name www.example.com;
location /confluence {
client_max_body_size 100m;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8090/confluence;
}
location /synchrony {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8091/synchrony;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.