FAQ

Page Discussion History

Difference between revisions of "FeatureRequests"

(Removed all the question marks, makes the page easier to read.)
(link trac.nginx.org)
 
Line 1: Line 1:
Here you can find some feature requests to Nginx.
+
This page is obsolete, use mailing list or http://trac.nginx.org/ instead.
 +
 
 +
Here you can find some feature requests to nginx.
 
{| border="1"
 
{| border="1"
 
|-
 
|-

Latest revision as of 13:25, 27 December 2011

This page is obsolete, use mailing list or http://trac.nginx.org/ instead.

Here you can find some feature requests to nginx.

Feature Priority Status
litespeed lsapi 3rd-party module, for faster php
Python support like nginx-perl or apache-mod_python WSGI support - see NgxWSGIModule
mod_mogilefs Valery has a partial version of this working - see http://marc.info/?l=nginx&m=123987914430543&w=2
Cluster manager (look at something like Zeus' web interface)
mod_svn
Pluggable module support like apache, make it easier for distributions to ship addons etc. Having to compile with patches is a tough barrier to entry
Listen on a unix socket initial support since 0.8.21 see HttpCoreModule#listen
Ability to turn on error/debug logging with different levels inside of anything (location, if statement, etc)
.htaccess-like functionality from Apache Never Give additional examples why this is needed? In PHP 5.3, this is built-in, not to mention using htscanner from PECL. Major lacking thing is allowing users to define their own protected directories. Server-level configuration is not very friendly for that. --My opinion: For example for easy migration from apache to nginx for customers.

Please see discussion page for an answer to why this will not happen.

BUG: upstream site.com:port should also be supported(in nginx.conf). Currently only site.com is supported 1
FastCGI process manager like lighttpd Never Lighttpd removing this in 1.5.x; use PHP-FPM or spawn-fcgi
get ACCEPT_LANGUAGE http header value in Variables
persistent connections to backends (fcgi, http, https, ...) 1
=1; not working ) 1
similar like mod_uploadprogress or disable buffering for nginx-proxy => backend See HttpUploadProgressModule
similar like mod_secdownload of Lighttpd See HttpAccessKeyModule and Using X-Accel-Redirect
mod_cache 1 HTTP backends since 0.7.44, see HttpProxyModule#proxy_cache; FastCGI backends since 0.7.45 HttpFcgiModule#fastcgi_cache
memcache cache media files using memcache
command line define flags ( like apache -D ) Since 0.7.4, see CommandLine#Options
JK-Protocol connector See nginx_ajp_module
mod_security like features
SCGI module See NgxSCGIModule
Smart load balancing (like mod_backhand ) - the fair module does not meet this need. nginx needs to support dynamically adding/removing upstream servers, an external process could handle the monitoring if needed, but nginx needs to have some sort of API/way to be notified of the change See HttpUpstreamFairModule
Session affinity (sticky cookies) for proxy balancer See HttpUpstreamRequestHashModule
chroot support
a more extended server-status (like lighty or even apache) Maybe? See http://marc.info/?l=nginx&m=124791846314890&w=2
MySQL or other database-driven config that gets reread every now and then
"X-LIGHTTPD-SID" like feature, see last paragraph mod_accesslog Could HttpProxyModule#proxy_hide_header solve this problem? If not please drop a mail to the mailing list so that we can talk about
An option to disable Nginx signature in both error pages and headers. As an addition signature could also include OS name + OS version See HttpCoreModule#server_tokens
smtp proxy - something like http://moxy.psychogenic.com/
auth_digest - Basic auth is very weak on replay attacks
LDAP, PAM or other authentication backends (scripting backend) See http://web.iti.upv.es/~sto/nginx/ for PAM support
Monitor bandwidth usage of per-vhost or SNMP support like Squid
mod_cgi : regular cgi. i.e. tie file extension to interpreter. .rhtml => eruby etc. Currently supported by proxying to Apache or thttpd; also look at http://nginx.localdomain.pl/wiki/FcgiWrap
mod_evasive like DDoS protection
Content negotiation like Apache mod_negotiation
mod_speed like selective traffic shaping
an Include type directive for directories so web applications packages can use nginx by placing their config file there CoreModule#include is the answer
Ability to remove ETAG support like Apache's "FileETag none" setting
SSL Module option "ssl_verify_client" support multiple levels to verify client certificate such as Apache mod_ssl. Also support directory sector in nginx.conf.
'elseif'/'else' statements added to configuration options after 'if' statements
Bug: Fails to return a valid HTTP response if passed an HTTP method in lower case. nc to the port and type a lower case letter, Nginx will immediately respond with the HTML for a 400 Bad Request, but will not have the HTTP error code
IPv6 support for upstreams when proxying
Built-in ETAG support for static files, there is a module, however I feel this should really be core


Legend
Never: Will be never implemented
Maybe: If anybody contributes a patch


. where should bugs be reported?
  • objs/src/os/unix/ngx_linux_init.o: In function ngx_os_specific_init': src/os/unix/ngx_linux_init.c:63: warning: the <code>sysctl' syscall has been removed from 2.6.18+ kernels, direct access to /proc/sys' should be used instead.
. I think some versions of glibc do this to check your processor level