我正在使用Nginx从Sinatra应用程序提供静态页面。
我已经使用NginxHttpAuthBasicModule实现了网站上的一个页面的基本身份validation,身份validation成功,但Nginx无法parsing链接。 错误日志给出 –
2010/03/22 12:15:19 [error] 7143#0: *2902 open() "/home/me/live/mysite_home/public /mypage" failed (2: No such file or directory), client: 82.71.18.122, server: mysite.com, request: "GET /mypage HTTP/1.1", host: "mysite.com"
实际的文件位于:
/home/me/live/mysite_home/live/mypage.erb
configuration文件是:
server { listen 80; server_name mysite.com; root /home/me/live/mysite_home/public; passenger_enabled on; location /mypage { auth_basic "Restricted"; auth_basic_user_file htpasswd; } } server { listen 443; server_name mysite.com; root /home/me/live/mysite_home/public; passenger_enabled on; ssl on; ssl_certificate /etc/nginx/conf/certs/server.crt; ssl_certificate_key /etc/nginx/conf/certs/server.key; keepalive_timeout 70; location /mypage { auth_basic "Restricted"; auth_basic_user_file htpasswd; } }
不知道这是一个Sinatra,乘客或Nginx的事情,或者如果我只是失去了一些东西。
只需要添加
passenger_enabled on;
位置块内
server { listen 80; server_name mysite.com; root /home/me/live/mysite_home/public; passenger_enabled on; location /mypage { passenger_enabled on; auth_basic "Restricted"; auth_basic_user_file htpasswd; } }
卫生署!
实际的文件位于:/home/me/live/mysite_home/live/mypage.erb
configuration文件是:root / home / me / live / mysite_home / public;
configuration文件在path中提到一个目录“public”。 而实际的文件path不包含这个。 这是一个错字吗?