我正在尝试在我的家庭服务器上启用一个服务,该服务的文档根目录与我的主站点不同。我无法弄清楚如何编辑网站.conf
文件,以便我可以同时运行主网站和新服务。
我的用例:我有一台运行Ubuntu 16.04.1和Apache 2的家庭服务器。我可以在ceres.local
浏览我的网站。我还安装了OpenProject 6.1。安装完成后,我可以在ceres.local/openproject
浏览到该服务,但现在浏览到ceres.local
会返回403 Forbidden
。
我查看了sites-enabled
,我发现000-default.conf
已不再列出,只有openproject.conf
。所以,我运行了a2ensite 000-default.conf
和service apache2 reload
。现在,我可以浏览到ceres.local
,但ceres.local/openproject
会返回404 Not Found
。
如何同时使用'ceres.local'和'ceres.local / openproject'来正确使用下面的两个.conf
文件?请注意不同的文档根源。
我的000-default.conf
内容如下:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ServerName ceres.local
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
我的openproject.conf
内容如下:
Include /etc/openproject/addons/apache2/includes/server/*.conf
<VirtualHost *:80>
ServerName ceres.local
DocumentRoot /opt/openproject/public
ProxyRequests off
Include /etc/openproject/addons/apache2/includes/vhost/*.conf
ProxyPass /openproject/ http://127.0.0.1:6000/openproject/ retry=0
ProxyPassReverse /openproject/ http://127.0.0.1:6000/openproject/
</VirtualHost>
答案 0 :(得分:0)
我知道这是一个很老的帖子。 但我花了3天时间来解决这个问题,这是我们google时的第一篇文章 所以,当你安装openproject时,他会创建一个名为openproject.conf的文件并禁用000-default.conf
此文件中的是这样的配置
Include /etc/openproject/addons/apache2/includes/server/*.conf
<VirtualHost *:80>
ServerName mydomain.com
DocumentRoot /opt/openproject/public
ProxyRequests off
Include /etc/openproject/addons/apache2/includes/vhost/*.conf
# Can't use Location block since it would overshadow all the other
#Proxypass directives on CentOS
ProxyPass /help/ http://127.0.0.1:6000/help/ retry=0
ProxyPassReverse /help/ http://127.0.0.1:6000/help/
</VirtualHost>
但是当你尝试访问mydomain.com时,你会收到消息403 - forbitten 你只需要像这样修改文件
Include /etc/openproject/addons/apache2/includes/server/*.conf
<VirtualHost *:80>
ServerName mydomain.com
ServerAlias www.mydomain.com
DocumentRoot /var/www/html # <----- LOCATION WHERE YOU SITE ARE
#DocumentRoot /opt/openproject/public #<--- You Need comment this line
ProxyRequests off
Include /etc/openproject/addons/apache2/includes/vhost/*.conf
# Can't use Location block since it would overshadow all the other proxypass
directives on CentOS
ProxyPass /help/ http://127.0.0.1:6000/help/ retry=0
ProxyPassReverse /help/ http://127.0.0.1:6000/help/
所以,如果可以看到下面的proxypass,当你把mydomain.com/help(你重定向到openproject),mydomain.com(你的主站点)时,apache会重定向到
我希望有人帮忙 快乐:)