我有一个项目从 github 拉到我的 /home 分区,并按照惯例建立了到 /var 分区的符号链接。
外观:
/home/vagrant/github/whois-dreyfus--> 实际项目的 repo
/var/www/whois-dreyfus--> 我正在为 Apache 使用符号链接
我在 vagrant box 中安装了 Apache 2.2.22 和 Passenger 4.0.56,并在远程服务器上运行。问题是,当我通过我的私有网络访问它时,会显示整个存储库而不是索引。这意味着如果我有192.100.93.88指向Apache 的索引页,192.100.93.88/whois-dreyfus另一方面,显示的是 repo,而不是项目的索引页。
此外,我已经使用 Webrick 在本地机器上测试了该项目,因此我确信问题来自网络服务器。
那么,我怎样才能运行我的 Rails 应用程序?
这个问题与此类似线但我找不到任何能解答我疑问的答案。
这是我的配置文件:
/etc/apache2/apache2.conf
# Load the passenger module for Apache
LoadModule passenger_module /opt/passenger/passenger-4.0.56/buildout/apache2$
<IfModule mod_passenger.c>
PassengerRoot /opt/passenger/passenger-4.0.56
PassengerDefaultRuby /home/vagrant/.rvm/gems/ruby-2.2.0/wrappers/ruby
</IfModule>
/etc/apache2/sites-enabled/
<VirtualHost *:80>
DocumentRoot /home/vagrant/github/whois-dreyfus/public
RailsBaseURI /whois-dreyfus
<Directory /home/vagrant/github/whois-dreyfus/public>
# This relaxes Apache security settings.
AllowOverride all
# MultiViews must be turned off.
Options -MultiViews
# Uncomment this if you're on Apache >= 2.4:
#Require all granted
PassengerEnabled on
Allow from all
</Directory>
</VirtualHost>
/etc/hosts
192.168.100.88 app app whois-dreyfus
如果还有什么不清楚的地方和/或需要更好的解释,请告诉我。谢谢。
答案1
我的猜测是,您仍然在 /etc/apache2/sites-enabled 中启用了默认站点,该站点的 DocumentRoot 为 /var/www,并且该站点当前正在为您提供内容。