我已经从https://oss-binaries.phusionpassenger.com存储库通过APT安装了nginx / 1.12.1和Phusion Passenger。它已在我的Rails应用程序中正确配置。
此后,我想通过在此https://www.modpagespeed.com/doc/build_ngx_pagespeed_from_source之后动态添加 nginx pagespeed 模块来改进nginx,以构建 ngx_pagespeed 模块并按照此https://www.nginx.com/blog/compiling-dynamic-modules-nginx-plus/进行操作编译动态模块,运行:
$ ./configure --with-compat --add-dynamic-module=$HOME/ngx_pagespeed-${NPS_VERSION} ${PS_NGX_EXTRA_FLAGS}
$ make modules
之后,我将 ngx_pagespeed.so 从 objs / 文件夹复制到 / etc / nginx / modules ,然后将模块加载到 nginx.conf ,在其上添加load_module modules/ngx_pagespeed.so;
。但是当我重新加载nginx时,它会再次出现以下错误:
nginx: [emerg] module "/usr/share/nginx/modules/ngx_pagespeed.so" is not binary compatible in /etc/nginx/nginx.conf:5
我的问题是:
如何从PhusionPassenger APT在nginx上添加ngx_pagespeed模块?
在不忘记以前安装的nginx(来自PhusionPassenger APT)模块的情况下编译附加模块的正确./configure
标志是什么?
谢谢
答案 0 :(得分:2)
在ubuntu xenial上,您可以更轻松地将配置标志添加到passenger-install-nginx-module
脚本,如下所示:passenger-install-nginx-module --extra-configure-flags="--with-compat --add-dynamic-module=$HOME/ngx_pagespeed-${NPS_VERSION} ${PS_NGX_EXTRA_FLAGS}"
而不是使用nginx-extras
包,因为匹配来自错误的包装过程是一种痛苦。您可以在此处详细了解:https://www.phusionpassenger.com/library/install/nginx/customizing_compilation_process.html