如何在运行Elastic Beanstalk环境的客户独立程序中启用“ngx_http_realip_module”?

我尝试在我的Elastic Beanstalk环境的http {}块内部使用set_real_ip_from选项,但收到此错误:

 $ service passenger restart *** ERROR *** Could not start Passenger Nginx core: nginx: [emerg] unknown directive "set_real_ip_from" in 

魔豆使用embeddednginx的旅客独立:

 $ gem list |grep passenger passenger (4.0.60) $ /opt/elasticbeanstalk/bin/get-config container -k nginx_version 1.8.1 

我试图使用gem install passenger更新乘客到一个较新的版本:

 $ gem install passenger Fetching: passenger-5.1.2.gem (100%) Building native extensions. This could take a while... Successfully installed passenger-5.1.2 Parsing documentation for passenger-5.1.2 Installing ri documentation for passenger-5.1.2 Done installing documentation for passenger after 48 seconds 1 gem installed 

但重启乘客时,我收到了这个:

 --------------------------------------- No precompiled Nginx engine could be downloaded. Compiling it from source instead. -------------------------------------------- Checking for required software... * Checking for C compiler... Found: yes Location: /usr/bin/cc * Checking for C++ compiler... Found: yes Location: /usr/bin/c++ * Checking for GNU make... Found: yes Location: /usr/bin/gmake * Checking for Rake (associated with /opt/rubies/ruby-2.3.1/bin/ruby)... Found: yes Location: /opt/rubies/ruby-2.3.1/bin/ruby /opt/rubies/ruby-2.3.1/bin/rake * Checking for OpenSSL development headers... Found: yes Location: /usr/include/openssl/ssl.h * Checking for Zlib development headers... Found: yes Location: /usr/include/zlib.h * Checking for PCRE development headers... Found: yes Location: /usr/include/pcre.h Installing... Downloading Nginx 1.8.1 source code... ######################################################################## 100.0% Extracting tarball... Compiling support libraries (step 1 of 2)... [**************************************************] - Compiling Nginx engine (step 2 of 2)... [************ ] \ ./configure: error: invalid option "--with-http_v2_module" *** ERROR: command failed: cd /tmp/passenger-install.wmn75y/nginx-1.8.1 && env PASSENGER_INCLUDEDIR=/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/passenger-5.1.2/src PASSENGER_LIBS=/tmp/passenger-install.wmn75y/common/libpassenger_common/Logging.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Exceptions.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Utils/SystemTime.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Utils/StrIntUtils.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Utils/StrIntUtilsNoStrictAliasing.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Utils/IOUtils.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Utils.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/WatchdogLauncher.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/AppTypes.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/Utils/CachedFileStat.o\ /tmp/passenger-install.wmn75y/common/libpassenger_common/UnionStationFilterSupport.o\ /tmp/passenger-install.wmn75y/common/libboost_oxt.a /bin/bash ./configure --prefix=/tmp --with-cc-opt=-Wno-error --without-http_fastcgi_module --without-http_scgi_module --without-http_uwsgi_module --with-ipv6 --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_gzip_static_module --with-http_stub_status_module --with-http_addition_module --add-module=/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/passenger-5.1.2/src/nginx_module 

如何重新编译这个embedded式nginx或者有没有其他简单的方法来启用这个模块?

这只是一个testing,然后我通过.ebextension永久性地做到这.ebextension

这看起来是乘客的问题。 这里是一个想法如何修改构建配置: https : //github.com/phusion/passenger/commit/e59af13629c8de1ea6ce509cec0fad7538860643