Назад | Перейти на главную страницу

Apache как обратный прокси для GitLab Omnibus

Я использую GitLab Omnibus на сервере CentOS6.5.

Сервер gitlab nginx прослушивает порт 6543 (Apache уже использует 80 и 443).

Я хочу использовать Apache в качестве обратного прокси для доступа к GitLab с этим адресом: gitlab.example.com вместо example.com:6543

Итак, я добавляю виртуальный хост Apache, вот его конфигурация:

<IfModule mod_ssl.c>
    <VirtualHost *:443>
        ServerAdmin admin@example.com
        ServerName gitlab.example.com
        ServerSignature Off
        CustomLog /var/log/httpd/gitlab_access.log combined
        ErrorLog /var/log/httpd/gitlab_error.log
        ErrorLog syslog:local2

        <IfModule mod_proxy.c>
            ProxyVia On
            ProxyRequests Off
            ProxyPass / https://example.com:6543/
            ProxyPassReverse / https://example.com:6543/
            ProxyPreserveHost Off
            <Proxy *>
                Options FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
            </Proxy>
        </IfModule>

        # SSL Config
        SSLCertificateFile /etc/ssl/example.com/default.crt
        SSLCertificateKeyFile /etc/ssl/example.com/default.key

        SSLEngine on
        SSLProtocol all -SSLv2
        SSLHonorCipherOrder on
        SSLCipherSuite ALL:!aNULL:!eNULL:!LOW:!EXP:!RC4:!3DES:+HIGH:+MEDIUM
        Header set Strict-Transport-Security "max-age=2678400"
    </VirtualHost>
</IfModule>

<VirtualHost *:80>
        ServerName gitlab.example.com
        Redirect / https://gitlab.example.com:443
</VirtualHost>

Итак, gitlab и apache работают, но при попытке доступа к gitlab через прокси-сервер он терпит неудачу и выдает ошибку 500.

Как я могу заставить это работать?