我已经在ip 123.123.123.123的nginx web服务器上托pipeexample.com,如果我从远程机器使用像这样的主机头curl curl -v -H "Host: example.com" 123.123.123.123/ 我明白了 curl -v -H "Host: example.com" 123.123.123.123/ * Trying 123.123.123.123… * Connected to 123.123.123.123 (123.123.123.123) port 80 (#0) > GET / HTTP/1.1 > Host: example.com > User-Agent: curl/7.43.0 > Accept: */* > < HTTP/1.1 200 OK < Server: nginx/1.9.9 < Date: Tue, 15 Dec 2015 01:34:22 […]
这样做有什么区别: upstream hhvm { server unix:/var/run/hhvm/hhvm.sock; } … location ~ \.(hh|php)$ { fastcgi_pass hhvm; } 和这个: location ~ \.(hh|php)$ { fastcgi_pass unix:/var/run/hhvm/hhvm.sock; } 哪个更好?
我需要在SSL下的同一个configuration文件中支持blah.domain1.com和blah.domain2.com。 我有* .domain1.com和* .domain2.com(这是一个多租户服务器)的通配符SSL证书。 我在这里有什么select,因为这(当然)不会工作: server_name blah.domain1.com blah.domain2.com; ssl_certificate /etc/ssl/certs/domain1.crt; ssl_certificate_key /etc/ssl/private/domain2.key; 我是否需要克隆.conf文件并分别引用每个域和SSL证书,还是有其他我可以做的事情? 谢谢。
例: http://example.com 和 http://www.example.com 链接到path(这是他们的根源) 在/ var / WWW 我希望任何其他子域名(例如test.example.com或1234.example.com)自动链接到/ var / www / pathforanysub,而不需要在conf-file中定义子域名为server_name,例如: test.example.com 和 1234.example.com 有相同的根 在/ var / WWW / pathforanysub 我对nginx非常陌生,如果有人能帮助我,这将是相当酷的。
我运行的Ubuntu nginx 1.8与FPM PHP 5.5,在一个网站上我能够得到caching工作(与一个简单的时间输出) <?php echo time();?>显示: Connection:keep-alive Content-Encoding:gzip Content-Type:text/html Date:Fri, 08 Jan 2016 14:04:00 GMT Fastcgi-Cache:HIT Server:nginx/1.8.0 Transfer-Encoding:chunked X-Powered-By:PHP/5.5.9-1ubuntu4.14 但是对于WordPress站点来说,标题总是显示(甚至在注销和隐身时): Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Connection:keep-alive Content-Encoding:gzip Content-Type:text/html; charset=UTF-8 Date:Fri, 08 Jan 2016 14:02:42 GMT Expires:Thu, 19 Nov 1981 08:52:00 GMT Fastcgi-Cache:BYPASS Link:<http://mywpsite.com/wp-json/>; rel="https://api.w.org/" Link:<http://mywpsite.com/>; rel=shortlink Pragma:no-cache Server:nginx/1.8.0 Transfer-Encoding:chunked Vary:Accept-Encoding X-Powered-By:PHP/5.5.9-1ubuntu4.14 从维基我已经尝试不同的设置,并压缩到以下单个文件(tester.com工程,而mywpsite.com不 – […]
我只是把网站从一个域移到另一个域。 它仍位于AWS Elastic Load Balancer后面的相同服务器上。 我还将负载均衡器上的证书更改为新域的证书。 问题是,所有现有的链接是https://www.old-domain.com – 所以当他们击中负载平衡器,SSL握手失败,所以它不redirect(B / C证书是没有http://newdomain.com ) 我想弄清楚如何redirect旧网域的https链接。 看起来最好的select是: 获取主题替代名称(SAN),将所有域放在那里,并将旧域redirect到NGINX conf中。 但是,这是昂贵的! 续订https://old-domain.com的证书,然后在单独的IP上redirect,并在那里redirect。 但这意味着另一个EC2实例,对吧? 咩。 这篇文章似乎谈到了另一个解决scheme,但是我还没有充分理解它: 在AWS ELB中的多个EC2实例上扩展多个SSL域 build议最好的方法来做到这一点? 我很感激!
我目前有以下设置: Nginx(https)=> ssl offloaded => Varnish(http)=> Apache(http) 我想添加mod_pagespeed或nginx pagespeed在混合中。 任何想法在哪里添加? 我应该考虑添加到Apache或Nginx pagespeed? 以下页面有一些信息,但我不确定如何处理我们的特定设置。 https://developers.google.com/speed/pagespeed/module/downstream-caching 我正在考虑探索以下选项之一: 将pagespeed添加到nginx中,使pagespeed使用varnish / apache中的caching页面,并实时执行将pagespeed添加到Apache,并将其configuration为基于用户代理/屏幕分辨率caching页面。 如果我理解正确,我上面提到的artice就是指第二个选项。 虽然我觉得设置第一个选项可能会更容易些? 先谢谢您的帮助!
我正在使用一个简单的nginx实例将REST调用代理到另一台服务器。 我的代理的目的是允许使用cookie进行身份validation。 我有它的工作,除了一个问题。 提供REST服务的服务器正在发送标题Access-Control-Allow-Origin * 。 该标头对基于cookie的身份validation过于宽松。 我需要用一个更具限制性的标题replace这个标题。 这是我的nginxconfiguration的一个子集: map $http_origin $cors_header { default ""; "~^https?://[^/]+\.mydomain\.com(:[0-9]+)?$" $http_origin; } server { location / { proxy_pass https://myrestserver.com/api; add_header Access-Control-Allow-Origin $cors_header; add_header Access-Control-Allow-Credentials true; } } 我的问题是,我最终有两个Access-Control-Allow-Origin头文件出现在我的响应中。 如何replace从REST服务器返回的头文件,以便在最终响应中只有我的头文件版本?
在限制来自IP的请求数量的同时,我正在使用 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/m; 我可以以r / m (请求每分钟)或r / s (请求每秒)来指定速率。 有没有一种方法来指定请求/小时的速度 ? 例如,我希望费率为75个/小时。 所以它将是1.25r / m,但r / m必须是一个整数。 所以,即使这样也行不通。 请帮我一下
我已经设置了一个指令caching到nginx中的memdisk: fastcgi_cache_path /dev/shm/nginx levels=1:2 keys_zone=WPCACHE:2048m inactive=480m; fastcgi_cache_key "$scheme$request_method$host$request_uri"; server { #snip other locations… # Pass all .php files onto a php-fpm/php-fcgi server. location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass php; fastcgi_cache WPCACHE; fastcgi_cache_valid 200 480m; add_header X-Cache $upstream_cache_status; fastcgi_cache_methods GET HEAD; fastcgi_cache_bypass $skip_cache; fastcgi_no_cache $skip_cache; […]