Articles of nginx

Nginxcaching提供caching内容而不是错误页面

有什么办法可以configurationNginx提供caching的内容而不是错误页面? 假设访问一个页面/abc.html导致了200,并且页面被caching了。 同时,有些东西发生了变化(文件被删除了,或者,如果nginx被用作反向代理服务器有50x错误等),而不是提供错误,我想服务最后一个“好”的caching页面。

ClamAV没有安装。 ClamAV已经安装

重新编辑: 大量的谷歌search,大量的跟踪,很多修补nginx.conf&/虚拟主机 – 这是一个错误信息,说ClamAV不是最新的。 运行clamscan告诉我clamscan没有安装。 试图安装clamscan告诉我,它已经安装。 e_e 所以,看起来我很快就会擦拭这台服务器。 非常感谢大家提供的见解。 如果有人知道这样的事情是怎么发生的,我知道… 编辑: 我通过重新启动服务器解决了这个问题。 e_e 如果我没有弄错,这会牵连php-fpm – 对吗? 然而,现在nginx在线,并响应我所做的configuration更改 – 我得到403禁止和502坏门户之前,我从来没有得到的东西。 (分别是ISPConfig和PhpMyAdmin)错误日志说: [error] 9150#0: *7 open() "[…]/ispconfig/[..]/phpmyadmin" failed (13: Permission denied), 一个链接表明增加缓冲区大小 – 我试过了,不起作用 – 而我发现的其他东西似乎是无关紧要的— 再次感谢 ! 长话短说,这一切都开始时,我试图做一个nginxconfiguration添加一个密码到一个网站。 没什么大不了 – 我以前做过,没有汗 – 但是,configuration不起作用,没有理由为什么— 好吧,长话短说,经过多次失败的尝试,我终于注意到了这一行: include sites-enabled/* ; 在nginx.conf中 只有惊喜, 一切仍然奏效 — 确定Apache没有运行后(它甚至没有安装,不再是了!) – 我search了一下,看看是否可以在Nginx上find关于configurationcaching的任何信息 – 但没有骰子。 […]

Nginx服务器位置configuration

我希望域example.com/a/1234/asdf,example.com/a/7890/qwer,…,example.com/a/*可以从同一个索引文件/ var / www /富/酒吧/ index.php的 我的nginx是这样configuration的: server { listen 80; root /var/www; index index.php; rewrite */a/(.*) /var/www/foo/bar/index.php; location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } } 当我得到example.com/a/1234/asdf我得到一个404找不到错误。

Ngnix重写 – 如果URL包含

我有一个小问题 – 我的错误日志填满了我的网站上的目录文件夹的请求(但添加的数据不应该在那里)。 http://example.com/the-directory/undefined http://example.com/the-directory/administrator http://example.com/the-directory/admin http://example.com/the-directory/script 如何设置重写,以便包含以下内容的任何请求: /the-directory/{any extra data} 301redirect到 /the-directory/ 我所尝试的是: rewrite ^/the-directory/(.*)$ /the-directory/ last; 但是,这只是陷入redirect循环。 任何帮助将不胜感激。

Nginx,Passenger,Rails提供静态文件但不运行应用程序

我看过其他类似的问题,但没有一个答案满意,所以这里就是了。 我已经安装了Ruby,Rails,Nginx和Passenger,并试图将其configuration为一起工作。 这是/opt/nginx/conf/nginx.conf的相关部分 server { listen 80; server_name .myapp.dev; # There is an entry in my local /etc/hosts file for this passenger_enabled on; root /srv/www/myapp.dev/public; access_log /srv/www/myapp.dev/logs/access_log; error_log /srv/www/myapp.dev/logs/error_log warn; } 有另一个server块,但是这是监听localhost所以我不认为这是造成任何问题。 这里是ls -la /srv/www/myapp.dev/的输出 drwxr-xr-x 3 josh josh 4096 Dec 4 19:12 . drwxr-xr-x 3 josh josh 4096 Dec 4 18:34 .. drwxr-xr-x 2 […]

如何修复Nginx / Phusion / Passenger“zsh:1:没有这样的文件或目录:passenger / buildout / agents / SpawnPreparer”

希望这是提出这个问题的正确网站。 我有一个web服务,我试图build立与使用Phusion Passenger乘坐Ruby Sinatra应用程序的NginX。 问题是,当我尝试启动服务器并testing该网站时,出现以下错误: zsh:1: no such file or directory: passenger/buildout/agents/SpawnPreparer 现在,我已经能够确定SpawnPreparer正在调用zsh ,但是,我不知道为什么。 我甚至不使用zsh ,而且在构build服务器时我没有使用它。 不过,我想知道的是,如果可以在nginx.conf中configuration乘客使用不同的shell来产生其进程? 如果是这样,怎么样? 这是Phusion 4.0.14 谢谢!

不能在同一个NGINX服务器下运行两个分离的网站

我试图使用nginx在同一台服务器上运行两个分离的站点。 根据configuration的不同,nginx在两个域名下服务于一个站点或另一个站点。 它不会在自己的域上运行每个站点。 有任何想法吗? 谢谢! 更新:我试过迈克尔·汉普顿的build议,但服务器不启动时,有两个server_name指令。 如果我评论一下,nginx开始,但只运行一个网站。 此外, service nginx configtest只适用于一个server_name,两个server_name失败。 configuration文件如下: 在/ etc / nginx的/网站可用/的Joomla server { listen 80; server_name n-pix.com; root /var/www/n-pix; index index.php index.html index.htm default.html default.htm; error_log /var/log/nginx/joomla.error.log info; # Support Clean (aka Search Engine Friendly) URLs location / { try_files $uri $uri/ /index.php?$args; } client_max_body_size 1024M; server_tokens off; # deny […]

Nginx + php-fcgi网站加载4-5秒,缓慢的问题

我的网站开始加载4-5秒(高峰时间) – 几乎不可用。 stream量:40MB / s输出,6MB / s英寸(几乎95%的下载文件0.5-2GB大)。 超过100个同时连接。 机器工作正常,没有问题,我通过网站非常缓慢地上传,大约50KB / s,通过FTP下载50KB / s,一切正常,并且KB / s的嗡嗡声,所以我认为问题可能会在nginx,php-fpm或mysql的configuration中。 但我实际上不知道如何debugging这个问题。 我已经search并增加了价值,以同时拥有数以千计的客户端,但问题仍然是一样的。 netstat -na |grep :80 |wc -l 250 //if it is something like 150 AND netstat -an | grep 80 | grep ESTA | wc 150 //this is less than 100, then it is okay, otherwise website is […]

NGINX将404错误redirect到一个外部URL

我还没有find任何方法来configuration404错误redirect到像http://google.com外部URL。 我find了方法来redirect到另一个页面/ 404.html,但不是一个外部URL。 例如,我想将任何403或404错误redirect到http://google.com 。 这可能吗? 谢谢你的帮助。

允许使用“部署”用户进行编写

我目前对厨师和Capistrano是新手。 我正在使用Capistrano 3.x版来部署Rails 4应用程序。 我已经用厨师独奏成功引导了一个服务器。 我正在使用的一本食谱是Nginx。 回到我的简单的Rails 4应用程序,我试图运行这个命令来检查我的部署的状态: cap production deploy:check 但是,它会抛出一些错误: DEBUG [05e580a4] Command: /usr/bin/env mkdir -pv /var/www/shared /var/www/releases DEBUG [05e580a4] mkdir: cannot create directory `/var/www': Permission denied DEBUG [05e580a4] mkdir: cannot create directory `/var/www': Permission denied 我使用Capistrano的deploy用户,并在我的厨师节点configuration,我speficied deploy用户。 我也可以使用deploy用户login我的实例。 有没有适当的方法来解决厨师或卡皮斯特拉诺的权限?