Hi,
I have been reverse proxying otrs since version 3 behind an apache proxy. We are currently on otrs 5, but i expect similar configurations will still work on 6. And this is for Apache, not nginx, but I am including in case it is helpful.
<VirtualHost *:443>
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite DEFAULT:!EXP:!SSLv2:!DES:!IDEA:!SEED:+3DES
SSLCertificateFile /etc/pki/tls/certs/companyname.crt
SSLCertificateKeyFile /etc/pki/tls/private/companyname.key
ProxyPreserveHost On
</VirtualHost>
In my experience you run into issues if you try to completely get rid of the /otrs/ part of the path, as you need a way to differentiate between /otrs-web/ and /otrs/
but you can rename it with your proxy. Here is a configuration we are using to serve up the public interface of OTRS (specifically the survey module)
<VirtualHost *:80>
ProxyPreserveHost On
RewriteEngine On
RewriteRule ^/survey/([A-Fa-f0-9]+)/?$ /public/?Action=PublicSurvey;PublicSurveyKey=$1 [P,L]
SetOutputFilter INFLATE;SUBSTITUTE;DEFLATE
Substitute "s| action=\"/otrs/
public.pl\"| action=\"#\"|i"
Substitute "s| Baselink: \"/otrs/
public.pl\?\"| Baselink: \"/public/?\"|i"
Substitute "s| CGIHandle: \"/otrs/
public.pl\"| CGIHandle: \"/public/\"|i"
</VirtualHost>
This configuration replaces the /otrs/
public.pl path with a new /public/ path, effectively hiding the fact that we are running OTRS.
Regards,
David Hess