Articles of nginx

Nginx中的PUT和DELETE方法

反正有没有办法让nginx中的特定虚拟主机启用PUT和DELETE这样的http方法? 我需要它为我的RESTfull服务器应用程序。

networking服务器可怕的慢,有时难以置信的速度

我正在一个非虚拟的64位ubuntu 11.04系统上运行一个小型社区(6000多个成员)。 我不是一个Linux专业版,甚至没有先进的,我只是试图build立一个networking服务器,其实并没有什么特别的。 提供一些dynamic的PHP和RoR网站是它的任务。 所以这可能是我的configuration文件看起来糟透了。 此外,我可能会使用错误的词汇,所以有疑问,请问。 目前有520个注册用户(董事会帐户,没有系统用户)同时在线的历史logging,平均服务器负载约为2.0 – 5.0。 同时(〜250个用户)的平均服务器负载值约为0.4 – 0.8,有时在一些昂贵的search上有点高。 一切都很好。 然而,不时地,负载增加到120(120.0,不是12.0;))。 在这个时候,它甚至难以通过SSH连接,但是当我到达服务器,并使用top / htop / iotop来查看发生了什么事情时,我无法识别任何导致高CPU负载的进程。 iotop告诉我目前的读/写速度约为。 70kb / s,这相当于我认为的断电。 内存使用量最大。 在〜12GB的16GB,所以交换空置。 现在奇怪(至less对我来说:)) 等待几分钟(因为当发生这种情况时,我总是会有点恐慌,感觉像5分钟,但是我想它更像是20-30分钟),服务器恢复正常。 一切正常。 另一个奇怪的事实 当我运行hdparm -tT / dev / sda时,我得到如下的答案: /dev/sda: Timing cached reads: 7180 MB in 2.00 seconds = 3591.13 MB/sec Timing buffered disk reads: 348 MB in 3.02 […]

在NGINX上,第一个SSL页面加载速度很慢

我最近从GeoTrust购买了一个QuickSSL证书,我在NGINX上使用它。 一切都很好,但是在页面实际加载之前有一个讨厌的秒钟。 如果我查看其他SSL网站,大多数会立即加载它应该。 这是我的SSLconfiguration: ssl on; ssl_certificate /usr/local/nginx/ssl/www.crt; ssl_certificate_key /usr/local/nginx/ssl/www.key; 我发现在listen指令的末尾添加ssl ,但还没有解决。 对于这个问题重现,我不得不closures网站,并在稍后重新访问(大约15分钟?)。

Nginx的反向代理使用try_files是服务的PHP文件unparsed

我使用Nginx作为处理PHP的Apache的反向代理,这里是我的nginx站点configuration: server { listen 80 default; server_name localhost; access_log /var/log/nginx/localhost.access.log; root /var/www/www.example.com/httpdocs; location ~ \.php$ { proxy_pass http://www.example.com:80; } location ~ /\.ht { deny all; } #location / { try_files $uri @proxy; #} location @proxy { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; […]

根据子域映射请求

如何映射我不需要重写URI的子域? server { listen 80; server_name cooking.com user.cooking.com admin.cooking.com; root html/cooking/public; location / { index index.html index.htm index.php; try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param FEED_ENV default; include fastcgi_params; } location ~* \.(ico|css|js|gif|jpe?g|png)$ { expires max; add_header Pragma public; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; } […]

反向代理到整个WWW

我试图创build一个反向代理工作像http://www.meowbify.com/ ,这是一个很酷的平台,用猫animationreplace图像。 我尝试了Apache和nginx的“反向代理”,只是为了反向代理一个现有的网站,它可以与www.bcc.co.uk这样的网站一起工作,但是没有与网站.com.cn一起工作。 (我在nginx中使用apache和proxy_pass中的常规ReverseProxyPass)。 在Apache中,我也使用了proxy_html_module,以重写链接。 那么http://www.meowbify.com/是如何工作的呢? 我已经搜查了mobifiy网站,其中指出: 它是如何工作的:Mobify.js使用一种称为客户端适配的技术来在浏览器中重新混合HTML。 浏览器会将重新混合的内容解释为服务器首先发送它! Mobify.js标签引导适配并加载执行它的Mobify.js文件。 该标签在iOS,Android和黑莓浏览器中激活。 默认情况下,Mobify.js文件是从开发服务器加载的。 开发服务器是Mobify Client的一部分,Mobify Client是一个用于构buildMobify.js项目的命令行工具。 它根据请求dynamic地编译Mobify.js文件。 该文件包含两个部分,Mobify.js API和网站特定的修改。 适应性被expression为对源DOM的一系列操作,即从页面的原始HTML构build的DOM。 可以selectHTML元素,然后使用模板进行渲染。 最后,呈现的模板被写入浏览器。 长话短说,它使用一些CSS魔术,以显示适合每个浏览器的网站。 我想,mewbifity的伎俩是操纵网站目录(即cat.'site'.meowbify.com /)。 那么我怎么能做类似的事呢? 在此先感谢,Guyl

为nginxconfigurationHttpRealIpModule

我想在我将在几天内收到的服务器上添加Cloudflare。 然而,为了保护我的访问者IP,我将不得不按照Cloudflare wiki来安装HttpRealIpModule模块 – https://www.cloudflare.com/wiki/Nginx 我使用这些EPEL存储库, rpm –import https://fedoraproject.org/static/0608B895.txt rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm rpm –import http://rpms.famillecollet.com/RPM-GPG-KEY-remi rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm yum install yum-priorities 接着 yum install nginx 我有两个问题, 这些会自动安装HttpRealIpModule 如果不是,我可以如何安装这些EPEL存储库

nginx的多个实例,以保持Django项目的独立

我正在Debian 6上使用Django + PostrgreSQL + Nginx构build应用程序。该应用程序有两个独立的组件,稍后将放在不同的机器上。 组件A使用REST API从组件B调用一个函数。 它存储的敏感数据应该由组件A只读,但可由组件B写入。 组件B将数据敏感数据写入组件A,并通过其API接收数据 我想分离这些组件,以便Comp B的暴露不会导致Comp A中的敏感数据暴露。为了这样做,我正考虑在不同的linux用户下运行nginx的两个实例。 然后运行组件B的用户将无法看到Comp A的settings.py ,这会将login凭证公开给A的数据库和存储数据的encryption密钥。 我的问题是, 我怎样才能设置Nginx运行2个实例,每个都在自己的用户帐户下? 如果可能的话,我只想使用标准Debian软件库中的软件包,以免丢失自动升级。

nginx + uwsgi: – 不可用修饰符请求:0 – ?

我正在关注这个在Gentoo上安装和configurationNginx,uWSGI和Django。 一切都看起来不错,直到最后一步:Nginx返回502错误的网关错误,以下内容出现在uWSGI日志中: *** Starting uWSGI 1.2.4 (32bit) on [Mon Sep 10 23:41:29 2012] *** compiled with version: 4.5.3 on 02 September 2012 22:00:55 detected number of CPU cores: 2 current working directory: /var/www/localhost/htdocs/mysite writing pidfile to /var/run/uwsgi/trac.pid detected binary path: /usr/bin/uwsgi your memory page size is 4096 bytes building mime-types dictionary from file /etc/mime.types…1017 entry […]

EC2 Micro与NGINX

我有一个运行Ubuntu 12.04的EC2 Micro。 我已经给它分配了一个EIP(23.21.213.236),我正在把我的域名Alogging指向这个IP。 我试图访问的域名是utoolsandfixings.co.uk,这应该显示一个页面,说“find服务器”。 在我做了所有的修改之后,我试过重启NGINX。 我已经在服务器上安装了NGINX,并设置了一个VHost,设置了一个符号链接等。VHOST如下: server { listen 80; ## listen for ipv4 server_name utoolsandfixings.co.uk; ## change this to your own domain name # I find it really useful for each domain & subdomain to have its own error and access log error_log /var/log/nginx/utoolsandfixings.co.uk.error.log; access_log /var/log/nginx/utoolsandfixings.co.uk.access.log; location / { # Change this to […]