Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root


1 badge earned


Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!


Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.


Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!


Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

Jira throws error 500 on any type of SSL connection, including Tomcat, NGINX and Apache


ave succesfully runt Jira Core Server 8.5.4 for a while with Nginx reverse proxy as SSL frontend. All was ok until recently upgraded to 8.13.0 and got stuck to problem: Jira starts throwing error 500 on login via SSL only. Access to plain HTTP works without any problem. Meanwhile, 8.13.1 released and I tried upgrade to 8.13.1, result is the same.

I checked causes, dignosis and resolutions from nearest similar case found (, no match - there is no multiple dashboards with the same name, there is no corrupted application links, and no Base URL healthcheck fails due to SSL certificate using SAN in logs.

Also, scheme is 'https', proxyPort is '443', proxyName is 'jira.some.domain' at server.xml connector config.

Tried to setup Apache reverse proxy, with same result.

Tried to config Tomcat with SSL ( Result is the same.

Is there any way to fix this except for reinstallation?

Error (/opt/atlassian/application-data/jira/log/atlassian-jira.log): In 'print' tag, expression "$dashboardTitle" evaluates to undefined.

019-05-1 11:00:00,284 http-nio-8080-exec-1 ERROR user1 111x111x1 aaaaa / [c.a.j.web.servlet.InternalServerErrorServlet] {errorId=qqqqq-qqqqqq-qqqqqq-qqqqqq-qqqqq-qqqq, interpretedMsg=, cause=java.lang.RuntimeException: javax.servlet.ServletException: java.lang.RuntimeException: In 'print' tag, expression "$dashboardTitle" evaluates to undefined., stacktrace=java.lang.RuntimeException: javax.servlet.ServletException: java.lang.RuntimeException: In 'print' tag, expression "$dashboardTitle" evaluates to undefined.
at com.atlassian.web.servlet.plugin.DynamicAuthorizationServletForwarder.forward( [?:?]

Error (browser https://jira.some.domain/jira then redirect to https://jira.some.domain/jira/secure/Dashboard.jspa):

The Tomcat server.xml has an incorrect configuration:
scheme should be 'https'
proxyName should be 'jira.some.domain'
proxyPort should be '443'


Sorry, we had some technical problems during your last operation.
Request assistance
Collect this information: when the problem occurred, after what operation (if you can)
Collect server logs using log's referral number (below)
Create a Support ZIP
Raise an issue for the Support team providing as much detail as possible, such as when the problem occurred, server logs, Support ZIP and the technical details (below).

echnical details
Log's referral number: 0d6a5c21-b0ae-4a8e-a45d-3f3816f77ecc

Referer URL: Unknown

java.lang.RuntimeException: javax.servlet.ServletException: java.lang.RuntimeException: In 'print' tag, expression "$dashboardTitle" evaluates to undefined.
java.lang.RuntimeException: javax.servlet.ServletException: java.lang.RuntimeException: In 'print' tag, expression "$dashboardTitle" evaluates to undefined.
at com.atlassian.web.servlet.plugin.DynamicAuthorizationServletForwarder.forward( [?:?]
at com.atlassian.web.servlet.plugin.SanitizingServletForwarder.forward( [?:?]
at com.atlassian.web.servlet.plugin.RememberingServletForwarder.forward( [?:?]
at com.atlassian.web.servlet.plugin.ResolvingServletForwarder.forward( [?:?]
at jsp.default_jsp._jspService( [classes/:?]


<?xml version="1.0" encoding="utf-8"?>
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on"/>
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>

<Service name="Catalina">
DEFAULT - Direct connector with no proxy for unproxied access to Jira.

If using a http/https proxy, comment out this connector.

<!-- Plain HTTP -->
<Connector port="8082" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^&#x5c;&#x60;&quot;&lt;&gt;"
maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false"
maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true"
acceptCount="100" disableUploadTimeout="true" bindOnInit="false"/>
<!-- -->

<!-- NGINX Reverse Proxy -->
<!-- -->
<Connector port="8080" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^&#x5c;&#x60;&quot;&lt;&gt;"
maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false"
maxHttpHeaderSize="16384" protocol="HTTP/1.1" useBodyEncodingForURI="true"
acceptCount="100" disableUploadTimeout="true" bindOnInit="false"
proxyPort="443" scheme="https" secure="true"/>
<!-- -->

<Connector port="8009" URIEncoding="UTF-8" enableLookups="false" protocol="AJP/1.3"/>

<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">

<Context docBase="${catalina.home}/atlassian-jira" path="/jira" reloadable="false" useHttpOnly="true">
<Resource name="UserTransaction" auth="Container" type="javax.transaction.UserTransaction"
factory="org.objectweb.jotm.UserTransactionFactory" jotm.timeout="60"/>
<Manager pathname=""/>
<JarScanner scanManifest="false"/>
<Valve className="org.apache.catalina.valves.StuckThreadDetectionValve" threshold="120" />

<Valve className="org.apache.catalina.valves.AccessLogValve"
pattern="%a %{}r %{jira.request.username}r %t &quot;%m %U%q %H&quot; %s %b %D &quot;%{Referer}i&quot; &quot;%{User-Agent}i&quot; &quot;%{}r&quot;"/>



NGINX config file (/etc/nginx/conf.d/jira.conf):

# generated 2020-06-02, Mozilla Guideline v5.4, nginx 1.14.1, OpenSSL 1.1.1c, modern configuration
server {
listen 443 ssl http2;
# listen [::]:443 ssl http2;

server_name jira.some.domain;

location /jira {
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://jira.some.domain:8080/jira;
client_max_body_size 20M;


ssl_certificate /etc/nginx/jira.some.domain_chain.cer;
ssl_certificate_key /etc/nginx/jira.some.domain_decrypted.key;

ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
ssl_session_tickets off;

# modern configuration
## ssl_protocols TLSv1.3;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;

# HSTS (ngx_http_headers_module is required) (63072000 seconds)
# add_header Strict-Transport-Security "max-age=63072000" always;

# OCSP stapling
# ssl_stapling on;
# ssl_stapling_verify on;

# verify chain of trust of OCSP response using Root CA and Intermediate certs

# !Get it later!
ssl_trusted_certificate /etc/nginx/chain.cer;

# replace with the IP address of your resolver



1 answer

0 votes
Andrew Laden
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
Nov 13, 2020

The fact that the logs are complaining about the wrong proxy and scheme settings in server.xml is certainly suspect.

Try setting up a separate connector specifically for use with the nginx proxy on a separate port.

Leave 8080 as the default, and run a connector on 8081 (or whatever) with the proxy settings, and then set your nginx to use that one. 

Maybe it will point out something.

@Konstantin G @Andrew Laden  same issues we tried to upgrade Jira 8.5.4 to 8.13.2 results 503 error message. Which results rollback our changes. Do yo have any recommendations to resolve this issue. 

Note: we are apache httpd 2.4

06-Mar-2021 09:35:16.560 SEVERE [main] org.apache.catalina.core.StandardService.startInternal Failed to start connector [Connector[AJP/1.3-8009]]
org.apache.catalina.LifecycleException: Protocol handler start failed
at org.apache.catalina.connector.Connector.startInternal(

Suggest an answer

Log in or Sign up to answer
AUG Leaders

Atlassian Community Events