GitLab site is showing the plesk default page. What am i doing wrong?

六月ゝ 毕业季﹏ 提交于 2019-12-12 18:07:55

问题


so here is my setup:

I have Ubuntu 14.04 and installed Gitlab omnibus. Then i basically just followed this guide: Setup for non-bundled Webserver (apache in my case)

I successfully enabled the apache site with this config files:

gitlab.rb (just those lines which are not commented):

external_url "http://git.codefighters.org"
nginx['enable'] = false
web_server['external_users'] = ['www-data']
gitlab_workhorse['listen_network'] = "tcp"
gitlab_workhorse['listen_addr'] = "127.0.0.1:8181"

git.codefighters.org.conf (in /etc/apache2/sites-available):

# This configuration has been tested on GitLab 8.2
# Note this config assumes unicorn is listening on default port 8080 and
# gitlab-workhorse is listening on port 8181. To allow gitlab-workhorse to
# listen on port 8181, edit /etc/gitlab/gitlab.rb and change the following:
#
# gitlab_workhorse['listen_network'] = "tcp"
# gitlab_workhorse['listen_addr'] = "127.0.0.1:8181"
#
#Module dependencies
# mod_rewrite
# mod_proxy
# mod_proxy_http
<VirtualHost *:80>
  ServerName git.codefighters.org
  ServerSignature Off

  ProxyPreserveHost On

  # Ensure that encoded slashes are not decoded but left in their encoded state.
  # http://doc.gitlab.com/ce/api/projects.html#get-single-project
  AllowEncodedSlashes NoDecode

  <Location />
    # New authorization commands for apache 2.4 and up
    # http://httpd.apache.org/docs/2.4/upgrading.html#access
    Require all granted

    #Allow forwarding to gitlab-workhorse
    ProxyPassReverse http://127.0.0.1:8181
    #Allow forwarding to GitLab Rails app (Unicorn)
    ProxyPassReverse http://127.0.0.1:8080
    ProxyPassReverse http://git.codefighters.org/
  </Location>

  # Apache equivalent of nginx try files
  # http://serverfault.com/questions/290784/what-is-apaches-equivalent-of-nginxs-try-files
  # http://stackoverflow.com/questions/10954516/apache2-proxypass-for-rails-app-gitlab
  RewriteEngine on

  #Forward these requests to gitlab-workhorse
  RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/gitlab-lfs/objects.* [OR]
  RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/builds/download.* [OR]
  RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/repository/archive.* [OR]
  RewriteCond %{REQUEST_URI} ^/api/v3/projects/.*/repository/archive.* [OR]
  RewriteCond %{REQUEST_URI} ^/ci/api/v1/builds/[0-9]+/artifacts.* [OR]
  RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/(info/refs|git-upload-pack|git-receive-pack)$
  RewriteRule .* http://127.0.0.1:8181%{REQUEST_URI} [P,QSA,NE]

  #Forward any other requests to GitLab Rails app (Unicorn)
  RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f [OR]
  RewriteCond %{REQUEST_URI} ^/uploads
  RewriteRule .* http://127.0.0.1:8080%{REQUEST_URI} [P,QSA,NE]

  # needed for downloading attachments
  DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public

  #Set up apache error documents, if back end goes down (i.e. 503 error) then a   maintenance/deploy page is thrown up.
  ErrorDocument 404 /404.html
  ErrorDocument 422 /422.html
  ErrorDocument 500 /500.html
  ErrorDocument 503 /deploy.html

  # It is assumed that the log directory is in /var/log/httpd.
  # For Debian distributions you might want to change this to
  # /var/log/apache2.
  LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b" common_forwarded
  ErrorLog /var/log/httpd/logs/git.codefighters.org_error.log
  CustomLog /var/log/httpd/logs/git.codefighters.org_forwarded.log common_forwarded
  CustomLog /var/log/httpd/logs/git.codefighters.org_access.log combined env=!dontlog
  CustomLog /var/log/httpd/logs/git.codefighters.org.log combined

</VirtualHost>

The problem i have though is, that you cant see any gitlab on git.codefighters.org, but the default Plesk page. I dont really know what exactly the problem is, as everythings works on the server. sudo gitlab-ctl status says that everything is running.

Thanks to all of you, helping me solve this issue!


回答1:


Alright, after googling the whole day, i found a solution to this. If you use Plesk on your server, it seems to have no effect when you change the apache conf's and enable them, because plesk manages this stuff (correct me if im wrong).

So, to let these conf's take effect you have to do the following:

First you need to create the domain on you plesk panel:

  • Log in into plesk and go Domains-> create the domain you want to use

  • Then log in into you server and go /var/www/vhosts/system/FQDN/conf (where FQDN should be replaced by you domain, in my case git.codefighters.org)

  • There, add (or change) the vhost.conf or vhost_ssl.conf respectively. You will not need the , as the content of these files is inserted in the particular section of an automatically generated configuration file. (taken from http://www.istvank.eu/archives/772)
  • For me, the vhost.conf looks like this:

      ServerName git.codefighters.org
      ServerSignature Off
    
      ProxyPreserveHost On
    
      # Ensure that e
    
      ncoded slashes are not decoded but left in their encoded state.
      # http://doc.gitlab.com/ce/api/projects.html#get-single-project
      AllowEncodedSlashes NoDecode
    
      <Location />
        # New authorization commands for apache 2.4 and up
        # http://httpd.apache.org/docs/2.4/upgrading.html#access
        Require all granted
    
        #Allow forwarding to gitlab-workhorse
        ProxyPassReverse http://127.0.0.1:8181
        #Allow forwarding to GitLab Rails app (Unicorn)
        ProxyPassReverse http://127.0.0.1:8080
        ProxyPassReverse http://git.codefighters.org/
      </Location>
    
      # Apache equivalent of nginx try files
      # http://serverfault.com/questions/290784/what-is-apaches-equivalent-of-nginxs-try-files
      # http://stackoverflow.com/questions/10954516/apache2-proxypass-for-rails-app-gitlab
      RewriteEngine on
    
      #Forward these requests to gitlab-workhorse
      RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/gitlab-lfs/objects.* [OR]
      RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/builds/download.* [OR]
      RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/repository/archive.* [OR]
      RewriteCond %{REQUEST_URI} ^/api/v3/projects/.*/repository/archive.* [OR]
      RewriteCond %{REQUEST_URI} ^/ci/api/v1/builds/[0-9]+/artifacts.* [OR]
      RewriteCond %{REQUEST_URI} ^/[\w\.-]+/[\w\.-]+/(info/refs|git-upload-pack|git-receive-pack)$
      RewriteRule .* http://127.0.0.1:8181%{REQUEST_URI} [P,QSA,NE]
    
      #Forward any other requests to GitLab Rails app (Unicorn)
      RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f [OR]
      RewriteCond %{REQUEST_URI} ^/uploads
      RewriteRule .* http://127.0.0.1:8080%{REQUEST_URI} [P,QSA,NE]
    
      # needed for downloading attachments
      DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public
    
      #Set up apache error documents, if back end goes down (i.e. 503 error) then a   maintenance/deploy page is thrown up.
      ErrorDocument 404 /404.html
      ErrorDocument 422 /422.html
      ErrorDocument 500 /500.html
      ErrorDocument 503 /deploy.html
    
      # It is assumed that the log directory is in /var/log/httpd.
      # For Debian distributions you might want to change this to
      # /var/log/apache2.
      LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b" common_forwarded
      ErrorLog /var/log/httpd/logs/git.codefighters.org_error.log
      CustomLog /var/log/httpd/logs/git.codefighters.org_forwarded.log common_forwarded
      CustomLog /var/log/httpd/logs/git.codefighters.org_access.log combined env=!dontlog
      CustomLog /var/log/httpd/logs/git.codefighters.org.log combined
    
  • The last thing you need to do is running this commands:

    /usr/local/psa/admin/bin/httpdmng --reconfigure-all

    sudo service httpd restart



来源:https://stackoverflow.com/questions/34421385/gitlab-site-is-showing-the-plesk-default-page-what-am-i-doing-wrong

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!