问题标签 [nginx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 在与 Rails 应用程序相同的域上运行 Wordpress 的最佳方式是什么?
我有一个标准的 Rails 应用程序,在http://mydomain上运行 Nginx 和 Mongrel 。我需要在http://mydomain.com/blog上运行一个 Wordpress 博客。我的偏好是将博客托管在 Apache 中,在同一台服务器或单独的机器上运行,但我不希望用户在 URL 中看到不同的服务器。这可能吗?如果没有,您会建议什么来实现目标?
caching - 任何 HTTP 代理都具有对请求/响应缓冲和延迟连接的显式、可配置支持?
在与移动客户端打交道时,在传输 HTTP 请求期间出现数秒延迟是很常见的。如果您从 prefork Apache 提供页面或服务,即使您的应用服务器逻辑在 5 毫秒内完成,子进程也将在几秒钟内为单个移动客户端提供服务。我正在寻找支持以下功能的 HTTP 服务器、平衡器或代理服务器:
请求到达代理。代理开始在 RAM 或磁盘中缓冲请求,包括标头和 POST/PUT 正文。代理不打开到后端服务器的连接。这可能是最重要的部分。
代理服务器在以下情况下停止缓冲请求:
- 已达到大小限制(例如 4KB),或
- 请求已被完整接收,headers 和 body
只有现在,在内存中有(部分)请求时,才打开到后端的连接并中继请求。
后端发回响应。代理服务器再次开始立即缓冲它(最大到更大的大小,比如 64KB。)
由于代理有足够大的缓冲区,后端响应在几毫秒内完全存储在代理服务器中,后端进程/线程可以自由处理更多请求。后端连接立即关闭。
代理以尽可能快或尽可能慢的速度将响应发送回移动客户端,而无需与后端连接占用资源。
我相当肯定你可以用 Squid 做 4-6,而 nginx 似乎支持 1-3(在这方面看起来相当独特)。我的问题是:是否有任何代理服务器可以理解这些缓冲和不打开连接直到准备好功能?也许只有一点 Apache config-fu 让这种缓冲行为变得微不足道?他们中的任何一个认为它不是像 Squid 那样的恐龙并且支持精益的单进程、异步、基于事件的执行模型吗?
(旁白:我会使用 nginx,但它不支持分块 POST 主体,因此无法为移动客户端提供服务。是的,便宜的 50 美元手机喜欢分块 POST……叹息)
nginx - nginx设置问题
我知道这不是直接的编程问题,但 stackoverflow 上的人似乎能够回答任何问题。
我有一台运行 Centos 5.2 64 位的服务器。相当强大的双核 2 服务器,具有 4GB 内存。它主要提供静态文件、flash 和图片。当我使用 lighttpd 时,它很容易提供超过 80 MB/秒的速度,但是当我使用 nginx 进行测试时,它下降到低于 20 MB/秒。
我的设置非常简单,使用默认设置文件,并且添加了以下内容
而且我认为 nginx 应该至少同样强大,所以我一定没有做任何事情。
ruby-on-rails - Capistrano + Thin + nginx,用户不允许 sudo howto?
我有这样一个场景,我想使用 capistrano 来部署我的 ruby on rails 应用程序:
- Web 应用程序位于一个瘦集群上,配置文件存储在 /etc/thin 下。在 /etc/init.d/thin 中还有一个 init 脚本,因此只要我的服务器需要重新启动,它就会自动启动
- nginx 也以同样的方式执行(作为一个 init 脚本守护进程)
- 为了确保万一有人入侵了我的网络服务器,我不希望他们做一些太可怕的事情,所以不允许网络用户使用 sudo。
- Thin 和 nginx 都以网络用户身份运行以强制执行此类安全性
现在,当我需要进行部署时,我需要将文件安装在 /home/webuser/railsapps/helloworld 下,然后我需要 cap 脚本重新启动我的瘦身。我想保留网络用户拥有的所有文件,因此 cap 脚本主要用户以网络用户身份运行。现在当我想重新启动瘦守护程序时出现问题,因为 webuser 不能 sudo。
我正在考虑是否可以调用两个单独的会话- webuser 进行文件部署,然后调用一个特殊的 sudoer 来重新启动守护进程。谁能给我一个示例脚本?
python - Nginx + fastcgi truncation problem
I'm running a Django site using the fastcgi interface to nginx. However, some pages are being served truncated (i.e. the page source just stops, sometimes in the middle of a tag). How do I fix this (let me know what extra information is needed, and I'll post it)
Details:
I'm using flup, and spawning the fastcgi server with the following command:
The nginx config is as follows:
python - 在生产中,Apache + mod_wsgi 还是 Nginx + mod_wsgi?
什么用于大中型 python WSGI 应用程序,Apache + mod_wsgi 或 Nginx + mod_wsgi?
哪种组合需要更多的内存和 CPU 时间?
哪个更快?
哪个以比另一个更稳定而闻名?
我也在考虑使用 CherryPy 的 WSGI 服务器,但我听说它不太适合负载非常高的应用程序,您对此了解多少?
注意:我没有使用任何 Python Web 框架,我只是从头开始编写整个东西。
注意':也欢迎其他建议。
django - How to configure server for small hosting company for django-powered flash sites?
I'm looking at setting up a small company that hosts flash-based websites for artist portfolios. The customer control panel would be django-powered, and would provide the interface for uploading their images, managing galleries, selling prints, etc.
Seeing as the majority of traffic to the hosted sites would end up at their top level domain, this would result in only static media hits (the HTML page with the embedded flash movie), I could set up lighttpd or nginx to handle those requests, and pass the django stuff back to apache/mod_whatever.
Seems as if I could set this all up on one box, with the django sites framework keeping each site's admin separate.
I'm not much of a server admin. Are there any gotchas I'm not seeing?
http - 在 nginx 中处理 OPTIONS 请求
我们目前使用 HAProxy 作为负载均衡器,它会定期向下游框发出请求,以确保它们使用 OPTIONS 请求处于活动状态:
选项 /index.html HTTP/1.0
我正在将 nginx 设置为带有缓存的反向代理(使用 ncache)。出于某种原因,当 OPTIONS 请求进来时,nginx 会返回 405:
192.168.1.10 - - [22/Oct/2008:16:36:21 -0700]“选项/index.html HTTP/1.0”405 325“-”“-”192.168.1.10
直接访问下游网络服务器时,我得到正确的 200 响应。我的问题是:如何让 nginx 将该响应传递给 HAProxy,或者,如何在 nginx.conf 中设置响应?
nginx - 如何更改 nginx 返回的服务器标头?
有一个隐藏版本的选项,因此它只会显示 nginx,但是有没有办法隐藏它,所以它不会显示任何内容或更改标题?
django - 使用 Django 为静态文件自定义 HTTP 标头
我正在用 Django 编写一个图像库,我想添加一个按钮来获取图像的高分辨率版本(低分辨率显示在详细信息页面中)。如果我只放一个<a>
链接,浏览器将打开图像而不是下载它。添加 HTTP 标头,例如:
有效,但由于它是一个静态文件,我不想用 Django 处理请求。目前,我使用 NGINX 提供静态文件,动态页面通过 FastCGI 重定向到 Django 进程。我正在考虑使用 NGINXadd-header
命令,但它可以设置filename="xx"
部分吗?或者也许有一些方法可以在 Django 中处理请求,但让 NGINX 为内容提供服务?