Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Komunikat mialem od passengera taki:
Nginx with Passenger support was successfully installed. The Nginx configuration file (/opt/nginx/conf/nginx.conf) must contain the correct configuration options in order for Phusion Passenger to function correctly. This installer has already modified the configuration file for you! The following configuration snippet was inserted: http { ... passenger_root /var/lib/gems/1.9.1/gems/passenger-4.0.5; passenger_ruby /usr/bin/ruby1.9.1; ... } After you start Nginx, you are ready to deploy any number of Ruby on Rails applications on Nginx. Press ENTER to continue. -------------------------------------------- Deploying a Ruby on Rails application: an example Suppose you have a Ruby on Rails application in /somewhere. Add a server block to your Nginx configuration file, set its root to /somewhere/public, and set 'passenger_enabled on', like this: server { listen 80; server_name www.yourhost.com; root /somewhere/public; # <--- be sure to point to 'public'! passenger_enabled on; } And that's it! You may also want to check the Users Guide for security and optimization tips and other useful information: /var/lib/gems/1.9.1/gems/passenger-4.0.5/doc/Users guide Nginx.html Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-) https://www.phusionpassenger.com Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.
Starting nginx: nginx: [emerg] unknown directive "public" in /opt/nginx/conf/nginx.conf:41
A config mam taki:
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { passenger_root /var/lib/gems/1.9.1/gems/passenger-4.0.5; passenger_ruby /usr/bin/ruby1.9.1; include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name 127.0.0.1; public /var/www; # <--- be sure to point to 'public'! passenger_enabled on; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443; # server_name localhost; # ssl on; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols SSLv2 SSLv3 TLSv1; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }
I mnie wywala . Tzn nie dziala na tym katalogu.
A chce by dzialalo do .rb (ruby)
root /somewhere/public; # <--- be sure to point to 'public'!
Ciekawe, co to może znaczyć. :D
Może po prostu projekt rails automatycznie tworzy folder public, gdzie jest strona www?
I tam musi być ustawiony root dla virtualnego hosta w Nginxie?
Offline
No wlasnie dla mnie to oznacza jakis katalog publiczny :D ale skoro dalem sobie chmod 777 na /var/www/public to powinno chyba zadziałać.
Root dla wirtualnego hosta. Czyli mam dac cos w stylu
cd /var/www/
rails new projekt
a w nginx
root /var/www/app/public;
Czy jakos przeindeksowac te cale katalogi]
Nie wywalilo bleldu ngnix wystartowal. Ale dalej w swoim katalogu choc dalem
service nginx restart
Ostatnio edytowany przez alex011 (2013-07-01 09:46:04)
Po zmianach mam tak.
Wykonalem
cd /var/www rails new ruby
On utworzył takie katalogi.
create create README.rdoc create Rakefile create config.ru create .gitignore create Gemfile create app create app/assets/javascripts/application.js create app/assets/stylesheets/application.css create app/controllers/application_controller.rb create app/helpers/application_helper.rb create app/views/layouts/application.html.erb create app/assets/images/.keep create app/mailers/.keep create app/models/.keep create app/controllers/concerns/.keep create app/models/concerns/.keep create bin create bin/bundle create bin/rails create bin/rake create config create config/routes.rb create config/application.rb create config/environment.rb create config/environments create config/environments/development.rb create config/environments/production.rb create config/environments/test.rb create config/initializers create config/initializers/backtrace_silencers.rb create config/initializers/filter_parameter_logging.rb create config/initializers/inflections.rb create config/initializers/mime_types.rb create config/initializers/secret_token.rb create config/initializers/session_store.rb create config/initializers/wrap_parameters.rb create config/locales create config/locales/en.yml create config/boot.rb create config/database.yml create db create db/seeds.rb create lib create lib/tasks create lib/tasks/.keep create lib/assets create lib/assets/.keep create log create log/.keep create public create public/404.html create public/422.html create public/500.html create public/favicon.ico create public/robots.txt create test/fixtures create test/fixtures/.keep create test/controllers create test/controllers/.keep create test/mailers create test/mailers/.keep create test/models create test/models/.keep create test/helpers create test/helpers/.keep create test/integration create test/integration/.keep create test/test_helper.rb create tmp/cache create tmp/cache/assets create vendor/assets/javascripts create vendor/assets/javascripts/.keep create vendor/assets/stylesheets create vendor/assets/stylesheets/.keep
Wiec dodalem do nginx cos takiego:
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { passenger_root /var/lib/gems/1.9.1/gems/passenger-4.0.5; passenger_ruby /usr/bin/ruby1.9.1; include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name localhost; root /var/www/ruby/public; # <--- be sure to point to 'public'! passenger_enabled on; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443; # server_name localhost; # ssl on; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols SSLv2 SSLv3 TLSv1; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }
Dałem
service nginx restart
I wyskoczylo pozytywnie
Restarting nginx: nginx. root@alex:/home/alexis#
Lec po wpisaniu localhost badz
127.0.0.1
127.0.1.1
z portem 80
Badz nawet testowalem na 3000 i 3333 i Ogolnie jak bym nginx nie ustawil to on jak by siedzi w swoim katalogu
Wyswietla swoj index.html swoj 404 . Doslownie wszystko swoje.
Nie wychodzi poza katalog
ps: wiem ze smiece ale w koncu to rozwiaze i przyda sie dla potomnych ;]
Zrobione :D Namęczyłem się ale sukces. Na pewno ktos moze miec podbne problemy wiec poleci tutek :D
W skrocie
Instalujemy ngnix
Instalujemy ruby
gemsa
passnegera
mod passenger
I potem instalujemy z gema passenger, rails tworzymy katalogi tak jak nizej w moim configu nginx
robimy w tym katalogu rails new costam
Tam ogolem . Ale tutka napisze bo na dugu nie widzialem ;)
events { worker_connections 1024; } http { passenger_root /var/lib/gems/1.9.1/gems/passenger-4.0.5; passenger_ruby /usr/bin/ruby1.9.1; include mime.types; default_type application/octet-stream; gzip on; sendfile on; keepalive_timeout 65; server { server_name localhost; listen 80; root /home/alexis/rorails/helloMySQL/public; passenger_enabled on; } }