0

I have a DSpace 6.4 with JSPUI and nginx for proxy (ip->domain) and http->https redirect. When I am clicking on language button happens redirect from https to http to ip address with 8080 port (will change later) and looks like this: http://server_ip:8080/jspui/home.jsp?locale=en but it must look like this: https://domain_name.com/jspui/home.jsp?locale=en

my nginx config looks like this:


server {
    server_name www.domain_name.com domain_name.com;
    return 301 https://domain_name.com$request_uri;
}

server {
    listen 80;
    server_name domain_name.com;
    #return 301 $scheme://domain_name.com$request_uri;
    access_log /var/log/nginx/domain_name.log;
    error_log /var/log/nginx/domain_name.log;
    root /opt/tomcat/webapps/;
    client_max_body_size 100M;
    
    listen 443 ssl;
    ssl_certificate /etc/letsencrypt/live/domain_name.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/domain_name.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    
    # Redirect non-https traffic to https
    if ($scheme != "https") {
        return 301 https://$host$request_uri;
    }
    
    location / {
        return 301 /jspui/;
    }

    location /jspui/ {
        index index.jsp;
        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://ip_address:8080/jspui/;
        proxy_redirect http://domain_name.com/jspui/ https://domain_name.com/jspui/;
        proxy_buffering off;
        proxy_store off;
        proxy_connect_timeout 120;
        proxy_send_timeout 120;
        proxy_read_timeout 120;
    }

    location /solr/ {
        allow 127.0.0.1;
        deny all;
    }
}

domain_name and ip_address are changed for security What can I do wrong?

Andrew
  • 1
  • 3

0 Answers0