Debian with Ruby on Rails and Apache 2 with FastCGI - Having Issues

Discussion in 'HOWTO-Related Questions' started by hayashi, Sep 28, 2006.

  1. hayashi

    hayashi New Member


    I'm having a bit of a problem getting my ruby application to run on the apache side of things. I create my site using the hosting plan then I have the user go in using shell access - he basically creates and test the application using the webrick server, but when he goes to copy the files over as in the How_To. We get stuck with an server error 500.

    Do we need to create the application in a specific folder?
    Where can the .htaccess be found in this account's folder or do we just make one?
    After trying to attempt some of these things - the site still results with an 500 server error.

    I was hoping someone could clarify the process using an example possibly filling in some of the gaps to the process.

    After attempting several times - i'm stuck using the webrick in order to see the site run.

    Confused and dazed

    hayashi :confused:
  2. Ovidiu

    Ovidiu Active Member

    well I ran into the same problems, I have a thread going on somewhere in the foru mwith exactly the same questions:

    Here are some issues I can remember right now that might help you:

    if you have a vhost pointing here: /var/www/web1 and your project is called test you copy everything inside test/public to /var/www/web1/web and delete the folder test/public. Then you copy everything from test/ into /var/www/web1 and then you can delete your project test. (I guess it might also be possible to work with symlinks instead of all this copying but I am not sure about that and neither how to do it, although using symlinks you could play around with more projects and keep your directory much more clean)

    Thats how I got it working. If you do that you end up with a .htaccess inside /var/www/web1/web which in my case contained "Options +ExecCGI +FollowSymLinks" which you have to remove from the .htaccess file as you should have put it into the directives field of ispcfg anyway. Then you add
    at the top of that .htaccess file.

    I still had some issues with folder rights, I had to do a chown -R www-data:web1 /var/www/web1/tmp so that the temporary files could be written there.

    AND check inside the .htaccess file that dispatcher.fcgi is called not dispatcher.cgi

    thats all I can remember right now but I guess it will bring you on the right track.

    good luck
  3. heymrdj

    heymrdj ISPConfig Developer ISPConfig Developer

    I know this is old but there is a fix for this. I use Nano, use whatever you desire.

    nano /etc/apache2/mods-available/fcgid.conf
    Make it look like this:

    <IfModule mod_fcgid.c>
      AddHandler fcgid-script .fcgi
      SocketPath /var/lib/apache2/fcgid/sock
      IdleTimeout 600
      ProcessLifeTime 3600
      MaxProcessCount 8
      IPCConnectTimeout 8
      IPCCommTimeout 48
    That raises your timeout and virtually ends the 500 errors.

Share This Page