Ruby on rails GitLab+;阿帕奇&x2B;普西翁客运站->;没有这样的文件或目录-config/environment.rb

Ruby on rails GitLab+;阿帕奇&x2B;普西翁客运站->;没有这样的文件或目录-config/environment.rb,ruby-on-rails,git,apache,passenger,gitlab,Ruby On Rails,Git,Apache,Passenger,Gitlab,我使用官方手册安装Gitlab,但我不想使用ngix,而是使用apache和passenger。我必须承认我还是一个linux新手 无论如何,这里有一个错误: 错误消息:没有这样的文件或目录-config/environment.rb 下面是我的apache配置: 服务器管理员webmaster@localhost DocumentRoot/var/www RailsBaseURI/gitlab RackBaseURI/gitlab 选项如下符号链接 不允许超限 选项索引跟随符号链接多视图 不

我使用官方手册安装Gitlab,但我不想使用ngix,而是使用apache和passenger。我必须承认我还是一个linux新手

无论如何,这里有一个错误:

错误消息:没有这样的文件或目录-config/environment.rb

下面是我的apache配置:

服务器管理员webmaster@localhost

DocumentRoot/var/www
RailsBaseURI/gitlab
RackBaseURI/gitlab
选项如下符号链接
不允许超限
选项索引跟随符号链接多视图
不允许超限
命令允许,拒绝
通融
ScriptAlias/cgi-bin//usr/lib/cgi-bin/
不允许超限
选项+执行CGI-多视图+符号链接所有者匹配
命令允许,拒绝
通融
选项-多视图
ErrorLog${APACHE_LOG_DIR}/error.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合


你知道我做错了什么吗?

嗯,很可能是其中之一

DocumentRoot /var/www
RailsBaseURI /gitlab
RackBaseURI /gitlab
只是指向了错误的目录。您已将gitlab代码签出到哪个目录?它与值匹配吗

顺便说一句,我使用的设置与您运行gitlab(apache+passenger)的设置几乎相同,并且只有DocumentRoot集

供您参考,这是我的虚拟主机配置,可能会帮助您:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName git.your_server_address

        PassengerMinInstances 1
        DocumentRoot /home/gitlab/gitlab/public
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>
</VirtualHost>

服务器管理员webmaster@localhost
ServerName git.your\u服务器\u地址
乘客1
DocumentRoot/home/gitlab/gitlab/public
选项如下符号链接
不允许超限
选项索引跟随符号链接多视图
不允许超限
命令允许,拒绝
通融
ScriptAlias/cgi-bin//usr/lib/cgi-bin/
不允许超限
选项+执行CGI-多视图+符号链接所有者匹配
命令允许,拒绝
通融
ErrorLog${APACHE_LOG_DIR}/error.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合
别名/doc/“/usr/share/doc/”
选项索引多视图跟随符号链接
不允许超限
命令拒绝,允许
全盘否定
允许从127.0.0.0/255.0.0.0::1/128开始

您的配置中不应包含以下内容:

RailsBaseURI /gitlab
RackBaseURI /gitlab
正如Phusion乘客文档中所解释的,“RailsBaseURI”表示“我在该URI下有一个Rails2应用程序”。Gitlab是Rails 3应用程序,因此您需要“RackBaseURI”。但您同时指定了这两个应用程序,而且“RailsBaseURI”具有前置性,因此Phusion乘客认为/gitlab是Rails 2应用程序

去掉“RailsBaseURI”,你应该会没事。

此配置()建议将
目录设置为
/home/gitlab/gitlab/public
(其中
/home/gitlab/gitlab
是从中克隆的根目录)。与中相同。您的方法看起来更像,这需要使用passenger()。
RailsBaseURI /gitlab
RackBaseURI /gitlab