Daronk
#programowanie #webdev #nginx #ruby #passenger

Panowie, sprawa jest. Nie orientuję się za bardzo w passengerze zintegrowanym z nginxem. Nginx szuka mi zawsze w złym miejscu index.html. Zwraca mi taki error.

"/home/konrad/public/index.html" is not found (20: Not a directory), client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "localhost:3000"

W konfigu ustawiłem to tak

server {

listen 3000;

server
name localhost;

root /home/konrad/Dokumenty/RailsApp/public/;

passenger_enabled on;

}

Wiecie może jak to skonfigurować, by udało mi się na tym odpalić Railsy 3 i 4?

Edit: w ogóle pierwszy raz nginxa mam zainstalowanego i nie ogarniam w którym miejscu configu ustawiam root directory jakieś.
2
  • Najlepsze
  • Wszystkie komentarze
E.....L
E.....L
@Daronk: która wersja passengera?

wrzuć na jakiegoś pastebina cały nginx.conf.
0
Daronk
0
E.....L
E.....L
0
Daronk
@EssePL: Dalej jest kłopot. Szuka mi localhosta na 3000 w home/konrad/public, a nie w home/konrad/dokumenty/public. Chodzi o to, ze musialbym wrzucac cala zawartosc railsowej aplikacji w katalog domowy (zreszta passanger tam mi juz zapisuje logi). Moze chodzi o zmiane sciezki w passengerze?
0
E.....L
E.....L
@Daronk: a tak swoją drogą - odpalasz to na localhoście? po co wtedy passenger?
0
Daronk
@EssePL: chciałem najpierw sprawdzić to u siebie na laptopie zanim skonfiguruję to pod digitalocean.
0
E.....L
E.....L
@Daronk: w sumie nie do końca wiem po co. masz dokładnie wszystko tak samo u siebie jak tam? trochę wątpię ;)
0
Daronk
@EssePL: No niby tak, ale zawsze tak robię - chcę poznać nowe rzeczy u siebie na komputerze jeżeli jest to możliwe, a potem jak pojawią się problemy, to szybko je rozwiązywać. Jestem na takim etapie, że mam folder public w katalogu głównym i jak mam w nim index to ten adres działa (localhost:3000). Ostatecznie chciałbym doprowadzić do działania dwóch aplikacji na różnych portach. Twojego pastebina skopiowałem całego. No nic, jak
0
E.....L
E.....L
@Daronk: jeśli już to robiłbym to na wirtualce.

a swoją drogą - to:

http://stackoverflow.com/questions/12658498/dreamhost-standalone-passenger-with-capistrano-not-recognizing-current-public-we

wygląda dokładnie jak Twój kłopot.
0
Daronk
@EssePL: OK, to działa. W dokumentacji widocznie nie doczytałem, że passenger start odpala to lokalnie. Myślałem, że czyta z configu wszystko i ma na takie rzeczy lachę. Dzięki wielkie ;)
0
E.....L
E.....L
@Daronk: to o czym mówisz - to odpalanie całego nginxa, czyli /etc/init.d/nginx start (albo jak tam u Ciebie inaczej).

ogólnie passengera standalone to odradzam, trochę się to mija z celem. albo przez nginxa już tak normalnie (ale teraz i tak się raczej od tego odchodzi tak jak patrzę), albo jakiś inny serwer: do deweloperki to webrick/mongrel/thin, produkcyjnie teraz unicorn jest chyba na czasie.
0
Daronk
@EssePL: OK, obczaję unicorna. Dzięki za pomoc ;)
0
Ragnarokk
@Daronk:

A w ogóle '/' to publicu w polu root to celowy jest?

@EssePL:

U mnie w robocie pasenger/nginx
0
Daronk
@Ragnarokk: no tak chyba railsy >=3 maja mieć.
0
Ragnarokk
@Daronk:

Mój plik konfiguracyjny twierdzi inaczej :)

Z tego co kojarzę, to zawsze używałem bez '/' na końcu. Ale nie wiem, czy to cokolwiek zmienia - możliwe, że to jest to samo.
0
Daronk
@Ragnarokk: Dobra, poprawię. W sumie i tak błąd wynikał też z tego, co mi @EssePL wyjaśnił.
0
Ragnarokk
@Daronk:

Nie twierdzę, że to błąd. Zaciekawiło mnie to tylko :)
0
Daronk
@Ragnarokk: W dokumentacji tego nie było - sam dodałem, bo już próbowałem wszystkiego ;]
0