Rails 3.1.3 na Passenger na Apache2 na MacOS na na na na.

Wbijamy do katalogu z naszym projektem
instalujemy passengera dla danego rubiego/rubiego i gemsetu

gem install passenger

Następnie konfugurujemy go dla apache2

passenger-install-apache2-module

Podczas instalacji wyświetlą nam się 3 linijki które trzeba dodać do pliku konfiguracyjnego apache:
mniejwięcej takie:

LoadModule passenger_module /Users/wachu/.rvm/gems/ruby-1.9.2-head@checkpointrunner/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /Users/wachu/.rvm/gems/ruby-1.9.2-head@checkpointrunner/gems/passenger-3.0.11
PassengerRuby /Users/wachu/.rvm/wrappers/ruby-1.9.2-head@checkpointrunner/ruby

Edycja np. vimem

sudo vim /etc/apache2/httpd.conf

Po dodaniu informacji o VirtualHost np. przez passenger pane – czyli podanie aliasu dla aplikacji i katalogu jej uruchamiania możemy przystąpić do restartu apache (kolejność dowolna)

Kolejna rzecz to restart apache:

 sudo /usr/sbin/apachectl restart

Appka powinna śmigać lokalnie (ew. sprawdzić plik hosts)

Jeżeli jednak wystąpią problemy z lokalizacją gita przez apache (niektóre biblioteki np. devise sprawdzają swoje katalogi przy użyciu zapytań gitowych) to należy zrobić linka do katalogu z gitem, gdyż apache szuka go w standardowej linuxowej lokalizacji (/usr/bin/git)

Sprawdzamy gdzie mamy gita:

which git

Tworzymy linka np:

sudo ln -nfs /usr/local/git/bin/git /usr/bin/git

Warto dodać sobie także alias do restartowania aplikacji, w przypadku korzystania z ZSH:

vim ~/.zshrc

Dodajemy

alias rst=’touch tmp/restart.txt && echo „zrestartowano”‚

Jeśli wystąpiły by problemy z uprawieniami apache’a do odczytu np. 403 forbidden, to należy pamiętać(wiedzieć) że cała ścieżka musi być dla apach’a możliwiwa do odczytania i wykonania  – należy nadać uprawnienia odczytu i wykonaia (a sobie zostawić wszystko czyli chmod 755)

Ten wpis został opublikowany w kategorii apache, macos, Ruby on Rails 3. Dodaj zakładkę do bezpośredniego odnośnika.