【发布时间】:2017-07-03 22:36:24
【问题描述】:
我正在研究 Ruby,并尝试使用 Apache 和 Passenger 在 Vagrant 上运行 this application。如果我在本地计算机上运行该应用程序,它可以正常工作,但如果我尝试在 Vagrant 上运行它,它只会显示 404“未找到”页面。 我想我的问题是我无法正确编写 Vagrantfile 和 Apache 中的所有配置。我的应用程序中有 404 页,因此它可以工作。但它在我尝试输入的任何 URL 上显示 404。 VagrantFile 包括:
config.vm.box = "ubuntu/trusty32"
config.vm.network :forwarded_port, guest: 80, host: 8080
config.vm.synced_folder "./html/", "/var/www/html"
并且还提供(安装 apache2、Ruby 2.3.3、RVM 和乘客)
在 /etc/apache2/sites-available/000-default.conf 中
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/public
PassengerRuby /home/vagrant/.rvm/gems/ruby-2.3.3/wrappers/ruby
<Directory /var/www/html/public>
PassengerEnabled on
Allow from all
Options -MultiViews
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
在 html 文件夹中,我还需要 apache 文件夹(tmp 和 public)
【问题讨论】:
-
您如何运行/启动您的应用程序?你如何访问它?
-
我只运行“vagrant up”命令,然后我转到 127.0.0.1:8080,apache 配置由 vagrant provision 中的 shell 脚本更改
标签: ruby apache vagrant passenger rack