2017-02-15 62 views
0

我正在學習Ruby,並嘗試使用Apache和Passenger在Vagrant上運行this application。如果我在本地計算機上運行該應用程序,該應用程序工作正常,但如果我嘗試在Vagrant上運行該應用程序,則該應用程序僅顯示404「找不到」頁面。 我想我的問題是我無法正確寫入Vagrantfile和Apache中的所有配置。我從我的應用程序中獲得404頁面,因此它可以正常工作。但是它顯示404我試圖輸入的任何URL。 VagrantFile包括:如何使用基於機架的應用程序配置Vagrant + Apache + Passenger?

config.vm.box = "ubuntu/trusty32" 
    config.vm.network :forwarded_port, guest: 80, host: 8080 
    config.vm.synced_folder "./html/", "/var/www/html" 

並且還提供(安裝的apache2,紅寶石2.3.3,RVM和乘客)

在/etc/apache2/sites-available/000-default.conf

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    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和公衆)

+0

你如何運行/啓動你的應用程序?你如何訪問它? –

+0

我只運行「vagrant up」命令,然後我轉到127.0.0.1:8080,apache配置被shell腳本從無業提供改變 –

回答

0

事實證明,該REQUEST_PATH變量對阿帕奇(REQUEST_URI)另一個名字,那我爲什麼路由器總是回饋「找不到」。 所以我只是改變了這個變量,現在一切正常。

相關問題