Nginx fails to start: Difference between revisions
No edit summary |
mNo edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
=== | {{BC|Certified}} | ||
__FORCETOC__ | |||
<div class="col-md-12 ibox-content"> | |||
==Nginx fails to start due to 'nginx.conf is missing' error== | |||
<hr> | <hr> | ||
{{WIP}} | |||
====Problem==== | |||
Running 'zmproxyctl start' gives the following error: | |||
Starting nginx...failed. /opt/zimbra/conf/nginx.conf is missing. | |||
Running zmproxyctl start | |||
Running zmproxyconfgen gives a NullPointerException: | |||
/opt/zimbra/libexec/zmproxyconfgen -s `zmhostname` | |||
Exception in thread "main" java.lang.NullPointerException | Exception in thread "main" java.lang.NullPointerException | ||
at com.zimbra.cs.util.ProxyConfVar.isValidUpstream(ProxyConfGen.java:308) | at com.zimbra.cs.util.ProxyConfVar.isValidUpstream(ProxyConfGen.java:308) | ||
Line 23: | Line 21: | ||
at com.zimbra.cs.util.ProxyConfGen.main(ProxyConfGen.java:2827) | at com.zimbra.cs.util.ProxyConfGen.main(ProxyConfGen.java:2827) | ||
====Solution==== | |||
The error comes up when the proxy configuration has non-existing servers or non-mailbox servers listed in the 'ReverseProxy' configuration. | |||
The error | Check the value of the attributes in the server configuration as well as global configuration: | ||
su - zimbra | su - zimbra | ||
zmprov -l gs `zmhostname` zimbraReverseProxyAvailableLookupTargets | zmprov -l gs `zmhostname` zimbraReverseProxyAvailableLookupTargets | ||
zmprov -l gcf zimbraReverseProxyAvailableLookupTargets | zmprov -l gcf zimbraReverseProxyAvailableLookupTargets | ||
zmprov -l gs `zmhostname` zimbraReverseProxyAvailableLookupTargets | zmprov -l gs `zmhostname` zimbraReverseProxyAvailableLookupTargets | ||
zmprov -l gs `zmhostname` zimbraReverseProxyUpstreamEwsServers | zmprov -l gs `zmhostname` zimbraReverseProxyUpstreamEwsServers | ||
zmprov -l gs `zmhostname` zimbraReverseProxyUpstreamLoginServers | zmprov -l gs `zmhostname` zimbraReverseProxyUpstreamLoginServers | ||
zmprov -l gcf zimbraReverseProxyAvailableLookupTargets | zmprov -l gcf zimbraReverseProxyAvailableLookupTargets | ||
zmprov -l gcf zimbraReverseProxyUpstreamEwsServers | zmprov -l gcf zimbraReverseProxyUpstreamEwsServers | ||
zmprov -l gcf zimbraReverseProxyUpstreamLoginServers | zmprov -l gcf zimbraReverseProxyUpstreamLoginServers | ||
Only place valid mailbox server names in these attributes. If there are non-existing mailbox servers (like an MTA, or a decommissioned server) change the value: | |||
zmprov ms server_name zimbraReverseProxyUpstreamEwsServers <mailbox_server_name> | zmprov ms server_name zimbraReverseProxyUpstreamEwsServers <mailbox_server_name> | ||
zmprov mcf zimbraReverseProxyUpstreamEwsServers <mailbox_server_name> | zmprov mcf zimbraReverseProxyUpstreamEwsServers <mailbox_server_name> | ||
Then | Then run zmproxyconfgen again: | ||
/opt/zimbra/libexec/zmproxyconfgen -s `zmhostname` | |||
Submitted by: Sourabh Bhushan | Submitted by: Sourabh Bhushan | ||
{{Article Footer|ZCS 8.8, 8.7, 8.6|2017-08-23}} |
Latest revision as of 08:55, 31 May 2018
Nginx fails to start due to 'nginx.conf is missing' error
Problem
Running 'zmproxyctl start' gives the following error:
Starting nginx...failed. /opt/zimbra/conf/nginx.conf is missing.
Running zmproxyconfgen gives a NullPointerException:
/opt/zimbra/libexec/zmproxyconfgen -s `zmhostname` Exception in thread "main" java.lang.NullPointerException at com.zimbra.cs.util.ProxyConfVar.isValidUpstream(ProxyConfGen.java:308) at com.zimbra.cs.util.WebEwsSSLUpstreamServersVar.update(ProxyConfGen.java:989) at com.zimbra.cs.util.ProxyConfGen.updateDefaultVars(ProxyConfGen.java:2471) at com.zimbra.cs.util.ProxyConfGen.createConf(ProxyConfGen.java:2630) at com.zimbra.cs.util.ProxyConfGen.main(ProxyConfGen.java:2827)
Solution
The error comes up when the proxy configuration has non-existing servers or non-mailbox servers listed in the 'ReverseProxy' configuration. Check the value of the attributes in the server configuration as well as global configuration:
su - zimbra zmprov -l gs `zmhostname` zimbraReverseProxyAvailableLookupTargets zmprov -l gcf zimbraReverseProxyAvailableLookupTargets zmprov -l gs `zmhostname` zimbraReverseProxyAvailableLookupTargets zmprov -l gs `zmhostname` zimbraReverseProxyUpstreamEwsServers zmprov -l gs `zmhostname` zimbraReverseProxyUpstreamLoginServers zmprov -l gcf zimbraReverseProxyAvailableLookupTargets zmprov -l gcf zimbraReverseProxyUpstreamEwsServers zmprov -l gcf zimbraReverseProxyUpstreamLoginServers
Only place valid mailbox server names in these attributes. If there are non-existing mailbox servers (like an MTA, or a decommissioned server) change the value:
zmprov ms server_name zimbraReverseProxyUpstreamEwsServers <mailbox_server_name> zmprov mcf zimbraReverseProxyUpstreamEwsServers <mailbox_server_name>
Then run zmproxyconfgen again:
/opt/zimbra/libexec/zmproxyconfgen -s `zmhostname`
Submitted by: Sourabh Bhushan