我一直在研究(testing)好几天,讨论在Apache上使用Nginx的优缺点。 我的主要问题是,使用Nginx来构build基于PHP和MySQL的SaaS是值得的吗? 几乎所有的静态文件都将从Amazon S3提供。 只留下PHP和服务器的数据库来处理。 服务器将是一个四核的8GB内存与10K磁盘在RAID 10。 我知道,在启动时,整体的stream量负载会相当低,所以不会有太大的区别。 不过,我宁愿现在计划未来,也不必重新configuration我们的应用程序,以在完全不同的Web服务器上工作。 我已经在apache和nginx上testing了这个应用程序。 Apache很容易build立,因为它基本上是一个基本的LAMP堆栈,有一些额外的软件包。 有了nginx,它已经做得更多了 – 而且我还没有完全build立起来(至less不是我想要推向产品的东西)。 我一直使用Nginx的.0.8.50,php5.3.3与PHP的FPM和APC。 Nginx需要编译几个库,configuration文件不是我习惯的 – 而且还需要大量的工作。 因为我们的大部分应用程序都是dynamic的,是否真的值得我们花时间去担心Nginx? 提前致谢!
我想使用Nginx作为一个简单的反向代理,但是如果Nginx后面的服务器closures,我只是显示一个空白页面。 由于某种原因,这个configuration没有在错误502上显示一个空白页面,我不知道为什么。 user www-data; worker_processes 1; error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; use epoll; # multi_accept on; } http { keepalive_timeout 65; proxy_read_timeout 200; upstream tornado { server 127.0.0.1:8001; } server { listen 80; server_name www.something.com; location / { error_page 502 = @blank; proxy_pass http://tornado; } location @blank { index index.html; root /web/blank; […]
我试图让phpmyadmin在我的服务器上运行。 这里是它的nginx虚拟主机: server { listen 80; server_name server.mydomain.net; location /phpmyadmin/ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$fastcgi_script_name; include /opt/nginx/conf/fastcgi_params; alias /usr/share/phpmyadmin/; } root /opt/nginx/html/; } 这是我的fastcgi_params文件 fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param […]
我应该写这样的东西 location !-f { proxy_pass http://lst207.b.ls1.ru:8000/; } # static content location ~* ^.+\.(jpg|jpeg|gif|css|js|ico|rar|gz|zip|pdf|tar|bmp|xls|doc|swf|mp3|avi|png|htc|txt|htc|flv)$ { #root "$document_root$"; access_log off; expires 7d; } 但似乎“-f”标志不起作用
我试图在我的Nginx服务器上安装buggenie。 不幸的是,它位于一个子目录(我无能为力),并使用Apache重写所有的URL。 当我从子目录中移动了所有东西的时候,我取得了一些成功,但不幸的是主目录中有一些东西需要它。 无论如何,我有它提供的.htaccess文件,我需要知道如何将重写转换为nginx重写。 我的configuration文件在这里: http://paste-bin.com/view/eb48c716 我认为主要的问题是RewriteBase … 抱歉join他们在一起,我目前无法添加超过1个url。
我得到“没有指定input文件”。 当我尝试浏览到phpmyadmin域,不知道我在做什么错误..使用php-fpm和php-cgi,php-fpm目前正在工作的另一个目录罚款..已经改变端口号为8888 -fpm已经在使用9000了 http://pastebin.com/kdEckiL3 来自nginx.conf: server { listen 80; server_name phpmyadmin.domain.com; access_log /home/fanboy/logs/phpmyadmin.access_log; error_log /home/fanboy/logs/phpmyadmin.error_log; location / { root /usr/share/phpmyadmin; index index.php; } location ~ \.php$ { fastcgi_pass 127.0.0.1:8888; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$fastcgi_script_name; include /usr/local/nginx/conf/fastcgi.conf; } }
所以我有一个网站,运行nginx / php-fpm / ubuntu 它工作得非常好(而且速度很快)并且几乎不使用任何内存。 我的客户昨天开始了一个广告活动,有几次,一次五或十分钟,网站没有加载。 由于统计数据显示目前访问量不是很多,我非常怀疑这是交通超载。 在这些“中断”期间,我将通过ssh连接并运行htop以查看资源统计信息。 处理器(所有这些)都在0%左右,而1024MB中的内存就是350MB,没有交换。 我真的很短暂地查看了访问日志,并没有在那里看到很多东西,尽pipe我注意到有几个机器人正在探查。 我怀疑这是他们的错,因为那里没有太多的东西(在一个侧面说明,什么是“消耗”简单的文本日志文件的好方法?) debugging这个的所有步骤是什么?
我正在试图find一个立即执行所有操作的LNMP安装程序。 你们知道吗? 我也希望PHP以快速的CGI运行。这将在centOS上的我的rackspace服务器上运行。
我刚刚安装了一个运行Ubuntu 10.10的VPS作为testing环境,使用nginx运行。 到目前为止,我已经运行apt-get install nginx php5 php5-cgi并通过浏览器访问VPS的IP,输出它的工作原理 ,所以应该准备好运行。 以前从来没有和nginx一起工作,我不知道下一步该怎么做。 我应该如何configuration我的nginx安装作为我的局域网中的登台服务器正常运行? 显然,nginx有多个configuration,包括sites-default和nginx-default这让我感到非常困惑。
我有这个在nginx和fastcgi(php-fpm)上运行的web服务。 Web服务被一些embedded的http客户端使用,这些客户端在使用服务时需要发送一些任意的http请求标头。 例如: CLIENT_ID: client1 CLIENT_AUTH_TOKEN: d84ldx 或类似的东西。 我不确定这种请求是否会在nginx到达时被捕获。 如果是这样,nginx将如何存储额外的HTTP头的值? 以及如何告诉nginx将parameter passing给php? 我已经试过了 fastcgi_param CLIETN_ID $client_id conf / fastcgi_paramsconfiguration文件,我认为这将帮助nginx存储在CLIENT_ID什么作为$ client_id参数。 我也放 fastcgi_param CLIENT_ID $client_id 只需获取$ client_id中存储的内容并将其作为键入的“CLIENT_ID”传递给php,这样php就可以用$ _SERVER ['CLIENT_ID']来访问它。 不幸的是,上面没有解决。 当我做 nginx -t 我得到错误“未知参数client_id”。 我在哪里弄错了,如何解决? 谢谢。