为 Redmine 配置 Apache 子域

为 Redmine 配置 Apache 子域

我有一个名为 DEV01.intranet 的服务器,我在那里安装了 Redmine。

我设法配置了一个子域 redmine.dev01.intranet,它现在可以运行,但是当我单独访问 dev01.intranet 时,它再次显示 Redmine(?!!!)

我想从http://redmine.dev01.intranethttp://dev01.intranet/redmine

我在启用站点中有这些:

GNU nano 2.2.6 文件:/etc/apache2/sites-enabled/default1

<VirtualHost *:80>
        DocumentRoot /var/www
        <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
</VirtualHost>

GNU nano 2.2.6 文件:/etc/apache2/sites-enabled/redmine

<VirtualHost redmine.dev01.intranet.fusiondev.com.ar:80>
 ServerName redmine.dev01.intranet.fusiondev.com.ar
 DocumentRoot /usr/local/share/redmine/public
 ServerAlias redmine.dev01.intranet.fusiondev.com.ar
 ServerAdmin [email protected]
 LogLevel warn
 ErrorLog /var/log/apache2/redmine_error
 CustomLog /var/log/apache2/redmine_access combined
 RailsEnv production
 RailsBaseURI /redmine
 PassengerDefaultUser www-data
 PassengerResolveSymlinksInDocumentRoot on
 <Directory /var/www/redmine>
   Options Indexes FollowSymLinks MultiViews
   AllowOverride None
   Order allow,deny
   allow from all
 </Directory>
</VirtualHost>

我做错了什么?为什么 Redmine 显示在 root / 但没有人这么说?

谢谢!

答案1

我最终找到了解决办法。

最大的问题解决了,将 000-xxx、001-xxx(数字前缀)添加到 VirtualHosts 符号链接(从 sites-available 到 sites-enabled)。这样,dev01 会首先单独加载,然后才是 redmine.dev01。

最后,第二个 Redmine 中没有 CSS 可供加载。如果我在 Apache 重启后先转到 redmine.dev01,则加载正常。但是 de01/redmine 没有 CSS,如果我先加载它,则反之亦然。

解决方案是复制源文件夹并将子域 DocumentRoot 指向第二个文件夹。这就像一个新的实例。没有过多地搜索其他解决方案,但由于数据库相同,因此只有 60mb 的磁盘空间被浪费,并且内存中有第二个实例(如果 Ruby on Rails 就是这么管理的话)。

我的 VirtualHosts,以防有人需要帮助。

GNU nano 2.2.6 文件:/etc/apache2/sites-enabled/000-dev01

<VirtualHost *:80>
        ServerAdmin [email protected]
        ServerName dev01.intranet.fusiondev.com.ar
        ServerAlias www.dev01.intranet.fusiondev.com.ar
        DocumentRoot /var/www/dev01
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/dev01>
                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>

        <Directory /var/www/dev01/redmine>
                RailsBaseURI /redmine
                PassengerResolveSymlinksInDocumentRoot on
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

GNU nano 2.2.6 文件:/etc/apache2/sites-enabled/001-redmine.dev01

<VirtualHost *:80>
 ServerName redmine.dev01.intranet.fusiondev.com.ar
 DocumentRoot /var/www/redmine.dev01/redmine
 ServerAlias www.redmine.dev01.intranet.fusiondev.com.ar
 ServerAdmin [email protected]
 LogLevel warn
 ErrorLog /var/log/apache2/redmine_error
 CustomLog /var/log/apache2/redmine_access combined
 RailsEnv production
 RailsBaseURI /redmine
 PassengerDefaultUser www-data
 PassengerResolveSymlinksInDocumentRoot on
 <Directory /var/www/redmine.dev01/redmine>
   Options Indexes FollowSymLinks MultiViews
   AllowOverride None
   Order allow,deny
   allow from all
 </Directory>
</VirtualHost>

答案2

尝试交换:

<VirtualHost redmine.dev01.intranet.fusiondev.com.ar:80>

<VirtualHost *:80>

虚拟主机和 IP 地址有些棘手 - 看看这里了解详情。

相关内容