什么是最简单的方法来限制访问除了一个,其中整个域通过FastCGI服务的所有文件? 使用下面的conf时出现的问题是我无法访问/ dir(我在某种循环中要求input密码,正确的login名+密码不让我进入)。 另外,同样的fastCGIconfiguration复制在location = /unrestricted_file.php和location〜.php $中。 结构是: server { location = /unrestricted_file.php { # FastCGI conf… break; } location / { root index auth_basic "Restricted"; auth_basic_user_file file; } location /dir { auth_basic "Restricted"; auth_basic_user_file file; } location ~ \.php$ { auth_basic "Restricted"; auth_basic_user_file file; # fastcgi_pass… } }
重写www到非www是行不通的。 domain.comurl的作品,但www.domain.com给出了以下错误"Problem loading page – Mozilla Firefox – Server not found". 我已经清除了FF Cache等。IE说,Internet Explorer无法显示网页。 我尝试了以下configuration和其他教程中的所有其他重写示例,包括nginx文档。 没有重新启动或重新加载nginx,(没有任何机会),我重新启动系统。 我的设置是Debian Lenny,nginx依赖和apt-get install nginx的基本安装; 而已。 很简单的testing服务器。 我在site-available中创build了一个domain.com文件,并为启用了网站的符号链接。 这是我的domain.comconfiguration文件(根据最佳实践完成,并遵循nginx的陷阱文档部分): server { server_name www.domain.com; rewrite ^ $scheme://domain.com$request_uri permanent; } server { server_name domain.com; location / { root /srv/www/sites/domain.com; } } 我在这里错过了什么? 我也试过用nginx-0.8.54; 编制了最新的稳定版本。 我尝试了两个不同的物理服务器。 尝试在VMWare VM上; 并尝试从远程计算机访问。 根据大家的教程重写似乎工作,但对我来说不。 我把Apache服务器放在一起没有问题,但是我一直把头撞在nginx的桌子上。 另外,我做了一个本地testing,并编辑了C:\ WINDOWS […]
我一直在尝试设置一个Sugar CRM实例 。 我有一个域的主服务器上的网站(www.domain.com),我已经创build了一个子域(sugar.domain.com),但我想这个子域托pipe在另一台服务器上 。 第二台服务器安装了nginx ,在虚拟主机上有一个工作的WordPress博客,所以我需要设置第二个站点。 为此,我创build了目录结构,并创build了具有以下内容的/etc/nginx/sites-enabled/sugar.domain.comconfiguration文件: * server { listen 80; server_name sugar.domain.com *.domain.com; access_log /var/www/sugar/log/access.log; error_log /var/www/sugar/log/error.log info; location / { root /var/www/sugar; index index.php; } location ~ .php$ { fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_pass backend; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/sugar/$fastcgi_script_name; include fastcgi_params; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH […]
美好的一天, 我目前使用免费的Amazon EC2微型实例学习Linux和服务器设置。 我希望将Nginx设置为反向Web代理。 我发现了一个很好的关于如何做到这一点mediatemple的文章: http ://wiki.mediatemple.net/w/Using_Nginx_as_a_Reverse_Web_Proxy 除了EC2之外,大多数服务器都可以使用该指导。EC2和MediaTemple之间的区别在于IP如何工作。 总的EC2实例不知道它们的弹性IP。 所以,当在虚拟主机中的维基指令,而不是myip:80例如我把*:80。 当只使用Apache这个完美的作品。 在apache虚拟主机中,我做了“127.0.0.1:80”,而在Nginx中我把*:80。 Apache重启,Nginx提供了一个错误,它不能绑定,因为这个ip已经在使用了。 如果我可以在Nginx文件中添加一个实际的IP地址,它可以工作,但是由于EC2要求我input星号,所以最终会与apache虚拟主机条目冲突。 任何人都知道一个简单的方法(除了不使用EC2);-)谢谢! 干杯,克里斯托弗
我已经设置了一个公钥来自动为我的用户在远程服务器上login。 所以这是从cli运行没有任何问题: rsync -r -a -v -e "ssh -l user" –delete ~/local/file 111.111.11.111:~/remote/; 但是,当我尝试从PHP脚本(在本地服务器的网页上)运行相同的操作时: $c='rsync -r -a -v -e –log-file=FILE "ssh -l user" –delete ~/local/file 111.111.11.111:~/remote/'; //exec($c,$data); passthru($c,$data); print_r($data); 这是我收到的: 2011/01/23 19:18:29 [6401] rsync: connection unexpectedly closed (0 bytes received so far) [sender] 2011/01/23 19:18:29 [6401] rsync error: unexplained error (code 255) at io.c(601) [sender=3.0.7] […]
我正在将一个WordPress的博客从一个基于Apache的networking服务器转移到一个基于Nginx的networking服务器 。 简单的步骤,我想: 来源WordPress文件夹的scp(在本例中为/var/www/example.com),该文件被传输到远程Web服务器上的同名文件夹。 没问题。 源WordPress数据库的mysqldump。 没问题。 在nginxnetworking服务器上,我创build了一个数据库(与源数据库名称相同,只是为了保持一切)。 我设置了一个默认的WP博客,看看现在是否一切正常。 我创造一个适当的 /etc/nginx/sites-available/example.comconfiguration文件(当然还有链接到启用网站的链接)。 那 configuration文件指向一个不同的文件夹(/ var / www / exampletemp) 修改我的Windows主机文件,以testing我感兴趣的域上的新博客。example.com的博客显示罚款,当然默认WP博客,但有正确的URL。 然后是关键的步骤。 首先,我编辑/etc/nginx/sites-available/example.com,以便现在指向真正的备份文件夹(/var/www/example.com) – >(只需更改根位置和fastcgi指令)。 然后我创build另一个数据库,恢复这个新的源数据库,编辑/ var / 我能得到什么? 一个华丽,美丽的 “错误310:太多redirect”:( 我可以在www.example.com/wp-login.php上看到login页面,但是我的源用户不工作,我无法访问WordPress仪表板。 我已经从phpMyadmin修改了一个pipe理员帐号,设置了一个新的密码,并select了MD5encryption,尽pipe当我从Apache转移到Apache或Nginx到Nginx时,这个工作起作用了。 我真的不明白为什么有太多的redirect错误。 我尝试禁用所有插件(将/ wp-content / plugins重命名为/ wp-content / oldplugins,或者用SQL查询禁用所有插件),但是再次运气不佳。 对不起,很长的问题。 我希望我已经说清楚了 编辑:这是nginxconfiguration文件,以防万一:) server { listen 80; server_name www.example.com; rewrite ^/(.*) http://example.com/$1 permanent; } server { […]
我已经configurationNginx(在我的本地服务器上)添加Expires头像这样: location ~* \.(ico|css|js|gif|jpe?g|png)$ { expires max; #auth_basic "Restricted, please login"; #auth_basic_user_file htpasswd.users; } 但是YSlow不停地说: There is 1 static component without a far-future expiration date. * (no expires) http://atpc.dev/f/a/i/favicon.ico 难道我做错了什么?
我正在用ngnix + passenger开发rails web服务,并且在nginx中使用了反向代理caching。 它工作得很好,速度非常快。 问题是有些客户端不支持gzip而有些客户端支持。 我发现nginxcachinggzip内容,因此,如果gzip支持的客户端先请求,然后非gzip客户端请求,即使客户端发送头“Accept-Encoding”:服务器仍然返回gzip内容: ”。 gzip on; gzip_http_version 1.0; gzip_vary on; gzip_comp_level 6; gzip_proxied any; gzip_types text/plain text/css text/javascript application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss; 你是否必须通过将request_uri和头部“Accept-Encoding”结合来分别caching它们?
我一直试图没有成功,通过使用命令gem install passenger然后passenger-install-nginx-module在我的服务器上安装Nginx版本的Phusion Passenger(mod_rails)。 一切顺利,直到我在最后得到下面的错误: # sh ./configure –prefix='/opt/nginx' –with-http_ssl_module –with-pcre='/tmp/root-passenger-15796/pcre-8.10' –add-module='/usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/ext/nginx' checking for OS + Linux 2.6.18-028stab070.14 x86_64 checking for C compiler … found but is not working # sh ./configure –prefix='/opt/nginx' –with-http_ssl_module –with-pcre='/tmp/root-passenger-15796/pcre-8.10' –add-module='/usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/ext/nginx' checking for OS + Linux 2.6.18-028stab070.14 x86_64 checking for C compiler … found but is not working ./configure:错误:找不到C编译器gcc 我不确定问题可能是什么。 […]
我正在寻找减less我的服务器上的负载。 我已经有了我的PHP文件设置,所以每当有人第一次访问特定页面时,它将html输出caching到/ cache文件夹中的whatever.htm文件中。 我使用nginx作为我的apache服务器(它只服务于php文件)的“前端”。 是否有可能设置nginx,以便: 1)如果请求index.php请求,首先检查/ cache文件夹中是否存在index.htm – 如果是,请提供该页面。 如果没有,请将请求传递给apache。 2)我只喜欢nginx检查caching文件夹只为一组特定的文件名(不是所有的PHP文件) – 可以设置一个数组或类似的东西? (只检查caching的index.php,contact.php,faq.php等请求) 3)如果服务一个.htm“caching”文件,有可能使它看起来像仍然服务于.php文件? 我只是不希望扩展名在地址栏中显示.htm,并开始与search引擎重复的内容问题。 任何帮助,将不胜感激!