Video with Ruslan from Nginx [MEDIA]
looks like ngx_pagespeed also working on dynamic module support Support building ngx_pagespeed as a dynamic module. · pagespeed/ngx_pagespeed@fbde0ac · GitHub
He has an announcement about today that he will release a new version with full support: Compilation Error · Issue #1117 · pagespeed/ngx_pagespeed · GitHub
ngx_pagespeed 1.10.33.5 beta has been released for Nginx 1.9.11 compatibility PageSpeed Release Notes Centmin Mod 123.09beta01 ONLY Compatible To test, please update to latest Centmin Mod 123.09beta01 code as outlined at Beta Branch - Centmin Mod .09 beta branch Testing and at Upgrade Centmin Mod - CentminMod.com LEMP Nginx web stack for CentOS using centmin.sh menu option 23 submenu option 1 and 2 if on Centmin Mod 123.09beta01 or submenu option 1 and 3 if on Centmin Mod 123.08stable or earlier versions. Only for Centmin Mod 123.09beta01 users Beta Branch - Centmin Mod .09 beta branch Testing. To test ngx_pagespeed 1.10.33.5 beta for nginx 1.9.11 compatibility, create or append to existing persistent config file /etc/centminmod/custom_config.inc setup for Code: NGINX_PAGESPEED=y NGXPGSPEED_VER='1.10.33.5-beta' NGINX_PAGESPEEDPSOL_VER='1.10.33.5' then recompile nginx 1.9.11 via centmin.sh menu option 4 ngx_pagespeed 1.10 branch won't work on Centmin Mod 123.08stable as it doesn't have the new improved code that Centmin Mod 123.09beta01 has to work around ngx_pagespeed 1.10 branch's higher GCC 4.8+ version requirements that CentOS 6 GCC 4.4.7 users as outlined in issues discussed at Nginx PageSpeed - Nginx Pagespeed 1.10.x betas coming. ngx_pagespeed 1.10.33.5 beta static build with persistent config file /etc/centminmod/custom_config.inc setup for Code: NGINX_PAGESPEED=y NGXPGSPEED_VER='1.10.33.5-beta' NGINX_PAGESPEEDPSOL_VER='1.10.33.5' Centmin Mod 123.09beta01 latest updated code build with above persistent config file settings set and nginx recompile via centmin.sh menu option 4 on CentOS 6.7 which has workaround to use devtoolset-3 GCC 4.9.1 instead of CentOS 6.7 GCC 4.4.7 ngx_pagespeed 1.10.33.5 beta dynamic module build For ngx_pagespeed 1.10.33.5 dynamic module support for nginx 1.9.11, using newly added variable, NGXDYNAMIC_NGXPAGESPEED=y with persistent config file /etc/centminmod/custom_config.inc setup for Code: NGXDYNAMIC_NGXPAGESPEED=y NGINX_PAGESPEED=y NGXPGSPEED_VER='1.10.33.5-beta' NGINX_PAGESPEEDPSOL_VER='1.10.33.5' unfortunately dynamic module build might have problems due to conflicts with CentOS 6.7 GCC 4.4.7 workaround using devtoolset-3 GCC 4.9.1 dynamic ngx_pagespeed module was not built Code: dynamic module directory at /usr/local/nginx/modules total 816K drwxr-xr-x 2 root root 4.0K Feb 16 14:08 . drwxr-xr-x 10 root root 4.0K Feb 16 14:15 .. -rwxr-xr-x 1 root root 122K Feb 17 06:17 ngx_http_geoip_module.so -rwxr-xr-x 1 root root 133K Feb 17 06:17 ngx_http_image_filter_module.so -rwxr-xr-x 1 root root 546K Feb 17 06:17 ngx_stream_module.so Code: configuring additional dynamic modules adding module in ../ngx_pagespeed-release-1.10.33.5-beta dirname: extra operand `/opt/rh/devtoolset-3/root/usr/bin/gcc' Try `dirname --help' for more information. mod_pagespeed_dir=../ngx_pagespeed-release-1.10.33.5-beta/psol/include build_from_source=false checking for psol ... found List of modules (in reverse order of applicability): ngx_http_write_filter_module ngx_http_header_filter_module ngx_http_chunked_filter_module ngx_http_v2_filter_module ngx_http_range_header_filter_module ngx_pagespeed_etag_filter ngx_http_gzip_filter_module ngx_pagespeed ngx_http_postpone_filter_module ngx_http_ssi_filter_module ngx_http_charset_filter_module ngx_http_sub_filter_module ngx_http_addition_filter_module ngx_http_userid_filter_module ngx_http_headers_filter_module checking for psol-compiler-compat ... found + ngx_pagespeed was configured Code: nprestart nginx: [emerg] dlopen() "/usr/local/nginx/modules/ngx_pagespeed.so" failed (/usr/local/nginx/modules/ngx_pagespeed.so: cannot open shared object file: No such file or directory) in /usr/local/nginx/conf/dynamic-modules.conf:2 nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed Gracefully shutting down php-fpm . done Starting php-fpm done Gist posted errors here. Bug report posted at ngx_pagespeed 1.10.33.5 dynamic module compile failed · Issue #1121 · pagespeed/ngx_pagespeed · GitHub
I got this with this new 1.10.33-5 .. CentOS 7.2 PHP 7.0.3 .. systemctl status nginx.service Code: ● nginx.service - SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 proxy server Loaded: loaded (/etc/rc.d/init.d/nginx) Active: failed (Result: exit-code) since Wed 2016-02-17 10:20:15 CET; 20s ago Docs: man:systemd-sysv-generator(8) Process: 23285 ExecStop=/etc/rc.d/init.d/nginx stop (code=exited, status=0/SUCCESS) Process: 23294 ExecStart=/etc/rc.d/init.d/nginx start (code=exited, status=1/FAILURE) Main PID: 14163 (code=killed, signal=SEGV) Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service: main process exited, code=killed, status=11/SEGV Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Unit nginx.service entered failed state. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service failed. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Starting SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 pro...rver... Feb 17 10:20:15 sarah.modeltog-forum.dk nginx[23294]: Starting nginx: nginx: [emerg] dlopen() "/usr/local/nginx/modules/ngx_pagespeed.s...conf:2 Feb 17 10:20:15 sarah.modeltog-forum.dk nginx[23294]: [FAILED] Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service: control process exited, code=exited status=1 Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Failed to start SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/P...server. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Unit nginx.service entered failed state. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service failed. systemctl status nginx.service -l Code: ● nginx.service - SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 proxy server Loaded: loaded (/etc/rc.d/init.d/nginx) Active: failed (Result: exit-code) since Wed 2016-02-17 10:20:15 CET; 2min 59s ago Docs: man:systemd-sysv-generator(8) Process: 23285 ExecStop=/etc/rc.d/init.d/nginx stop (code=exited, status=0/SUCCESS) Process: 23294 ExecStart=/etc/rc.d/init.d/nginx start (code=exited, status=1/FAILURE) Main PID: 14163 (code=killed, signal=SEGV) Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service: main process exited, code=killed, status=11/SEGV Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Unit nginx.service entered failed state. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service failed. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Starting SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 proxy server... Feb 17 10:20:15 sarah.modeltog-forum.dk nginx[23294]: Starting nginx: nginx: [emerg] dlopen() "/usr/local/nginx/modules/ngx_pagespeed.so" failed (/usr/local/nginx/modules/ngx_pagespeed.so: cannot open shared object file: No such file or directory) in /usr/local/nginx/conf/dynamic-modules.conf:2 Feb 17 10:20:15 sarah.modeltog-forum.dk nginx[23294]: [FAILED] Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service: control process exited, code=exited status=1 Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Failed to start SYSV: Nginx is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3 proxy server. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: Unit nginx.service entered failed state. Feb 17 10:20:15 sarah.modeltog-forum.dk systemd[1]: nginx.service failed. nginx -V Code: nginx version: nginx/1.9.11 built by clang 3.4.2 (tags/RELEASE_34/dot2-final) built with LibreSSL 2.2.6 TLS SNI support enabled configure arguments: --with-ld-opt='-lrt -ljemalloc -Wl,-z,relro -Wl,-rpath,/usr/local/lib' --with-cc-opt='-m64 -mtune=native -mfpmath=sse -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wno-sign-compare -Wno-string-plus-int -Wno-deprecated-declarations -Wno-unused-parameter -Wno-unused-const-variable -Wno-conditional-uninitialized -Wno-mismatched-tags -Wno-c++11-extensions -Wno-sometimes-uninitialized -Wno-parentheses-equality -Wno-tautological-compare -Wno-self-assign -Wno-deprecated-register -Wno-deprecated -Wno-invalid-source-encoding -Wno-pointer-sign -Wno-parentheses -Wno-enum-conversion -Wno-c++11-compat-deprecated-writable-strings -Wno-write-strings' --sbin-path=/usr/local/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_stub_status_module --with-http_secure_link_module --with-openssl-opt=enable-tlsext --add-module=../nginx-module-vts --with-libatomic --with-threads --with-stream=dynamic --with-stream_ssl_module --with-http_gzip_static_module --add-module=../ngx_brotli --add-dynamic-module=../ngx_pagespeed-release-1.10.33.5-beta --with-http_sub_module --with-http_addition_module --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_realip_module --add-module=../nginx-accesskey-2.0.3 --add-module=../nginx-http-concat-master --add-module=../ngx-fancyindex-0.3.6 --add-module=../ngx_cache_purge-2.3 --add-module=../ngx_devel_kit-0.2.19 --add-module=../set-misc-nginx-module-0.29 --add-module=../echo-nginx-module-0.58 --add-module=../redis2-nginx-module-0.12 --add-module=../ngx_http_redis-0.3.7 --add-module=../nginx_upstream_check_module-0.3.0 --add-module=../openresty-memc-nginx-module-4f6f78f --add-module=../openresty-srcache-nginx-module-ffa9ab7 --add-module=../headers-more-nginx-module-0.29 --with-pcre=../pcre-8.38 --with-pcre-jit --with-http_ssl_module --with-http_v2_module --with-openssl=../libressl-2.2.6
yeah ngx_pagespeed dynamic module mode NGXDYNAMIC_NGXPAGESPEED=y with doesn't work as outlined at https://community.centminmod.com/posts/26773/ only static mode NGXDYNAMIC_NGXPAGESPEED=n can also follow my bug report at ngx_pagespeed 1.10.33.5 dynamic module compile failed · Issue #1121 · pagespeed/ngx_pagespeed · GitHub
ah there must be confusion as 1.10.33.5 has not been officially released yet and is missing dynamic module patches posted 4hrs ago ngx_pagespeed 1.10.33.5 dynamic module compile failed · Issue #1121 · pagespeed/ngx_pagespeed · GitHub
Google Groups so follow outlined custom_config file variable settings https://community.centminmod.com/posts/26773/
For dynamically built ngx_pagespeed module with persistent config file /etc/centminmod/custom_config.inc setup for Code: NGXDYNAMIC_NGXPAGESPEED=y NGINX_PAGESPEED=y NGXPGSPEED_VER='1.10.33.5-beta' NGINX_PAGESPEEDPSOL_VER='1.10.33.5' seems to still fail to compile on Centmin Mod 123.09beta01 on CentOS 7.2 Code: configuring additional dynamic modules adding module in ../ngx_pagespeed-release-1.10.33.5-beta basename: extra operand '-ferror-limit=0' Try 'basename --help' for more information. dirname: invalid option -- 'f' Try 'dirname --help' for more information. mod_pagespeed_dir=../ngx_pagespeed-release-1.10.33.5-beta/psol/include build_from_source=false checking for psol ... found List of modules (in reverse order of applicability): ngx_http_write_filter_module ngx_http_header_filter_module ngx_http_chunked_filter_module ngx_http_v2_filter_module ngx_http_range_header_filter_module ngx_pagespeed_etag_filter ngx_http_gzip_filter_module ngx_pagespeed ngx_http_postpone_filter_module ngx_http_ssi_filter_module ngx_http_charset_filter_module ngx_http_sub_filter_module ngx_http_addition_filter_module ngx_http_userid_filter_module ngx_http_headers_filter_module checking for psol-compiler-compat ... found + ngx_pagespeed was configured current status for ngx_pagespeed usage with Nginx 1.9.11 ngx_pagespeed 1.10 only works on Centmin Mod 123.09beta01 and NOT 123.08stable. ngx_pagespeed 1.10 branch only really compiles properly if you use GCC 4.8+ compiler instead of Centmin Mod's default Clang compiler for Nginx. I switched to Clang for faster compile speed and lower memory usage. But looks like for ngx_pagespeed 1.10 branch need to auto switch back from Clang to GCC 4.8.5 on CentOS 7 and GCC 4.9.1 via devtoolset-3 on CentOS 6. Centmin Mod 123.09beta01 latest updated code does just this, auto switch back to GCC when ngx_pagespeed 1.10 branch is detected. So for now if you want to use nginx 1.9.11 with ngx_pagespeed you need to use ngx_pagespeed 1.10.33.5 beta and has to be compiled statically and not as a dynamic module, so use: Code: NGXDYNAMIC_NGXPAGESPEED=n NGINX_PAGESPEED=y NGXPGSPEED_VER='1.10.33.5-beta' NGINX_PAGESPEEDPSOL_VER='1.10.33.5'
already is one at ngx_pagespeed 1.10.33.5 dynamic module compile failed · Issue #1121 · pagespeed/ngx_pagespeed · GitHub
ngx_pagespeed 1.10 dynamic module + nginx 1.9.11 ngx_pagespeed 1.10 only works on Centmin Mod 123.09beta01 and NOT 123.08stable. Folks at ngx_pagespeed have fixed the problem and seems ngx_pagespeed 1.10.33.5 beta now works as a dynamic nginx module on Nginx 1.9.11 For dynamically built ngx_pagespeed module with persistent config file /etc/centminmod/custom_config.inc setup for Code: NGXDYNAMIC_NGXPAGESPEED=y NGINX_PAGESPEED=y NGXPGSPEED_VER='1.10.33.5-beta' NGINX_PAGESPEEDPSOL_VER='1.10.33.5' Then remove older broken tar ball and directory for ngx_pagespeed 1.10.33.5 beta Code: rm -rf /svr-setup/release-1.10.33.5-beta.tar.gz rm -rf /svr-setup/ngx_pagespeed-release-1.10.33.5-beta Then run centmin.sh menu option 4 to recompile Nginx 1.9.11 Code: -------------------------------------------------------- Centmin Mod 1.2.3-eva2000.09 - http://centminmod.com -------------------------------------------------------- Centmin Mod Menu -------------------------------------------------------- 1). Centmin Install 2). Add Nginx vhost domain 3). NSD setup domain name DNS 4). Nginx Upgrade / Downgrade 5). PHP Upgrade / Downgrade 6). XCache Re-install 7). APC Cache Re-install 8). XCache Install 9). APC Cache Install 10). Memcached Server Re-install 11). MariaDB 5.2/5.5 & 10.x Upgrade Sub-Menu 12). Zend OpCache Install/Re-install 13). Install ioping.sh vbtechsupport.com/1239/ 14). SELinux disable 15). Install/Reinstall ImagicK PHP Extension 16). Change SSHD Port Number 17). Multi-thread compression: pigz,pbzip2,lbzip2... 18). Suhosin PHP Extension install 19). Install FFMPEG and FFMPEG PHP Extension 20). NSD Re-install 21). Update - Nginx + PHP-FPM + Siege 22). Add Wordpress Nginx vhost + Cache Plugin 23). Update Centmin Mod Code Base 24). Exit -------------------------------------------------------- Enter option [ 1 - 24 ] 4 -------------------------------------------------------- Part of the configure stage of Nginx 1.9.11 compilation Code: configuring additional modules adding module in ../nginx-module-vts + ngx_http_vhost_traffic_status_module was configured adding module in ../nginx-accesskey-2.0.3 + ngx_http_accesskey_module was configured adding module in ../nginx-http-concat-master + ngx_http_concat_module was configured adding module in ../ngx-fancyindex-0.3.6 + ngx_http_fancyindex_module was configured adding module in ../ngx_cache_purge-2.3 + ngx_http_cache_purge_module was configured adding module in ../ngx_devel_kit-0.2.19 + ngx_devel_kit was configured adding module in ../set-misc-nginx-module-0.29 found ngx_devel_kit for ngx_set_misc; looks good. + ngx_http_set_misc_module was configured adding module in ../echo-nginx-module-0.58 + ngx_http_echo_module was configured adding module in ../redis2-nginx-module-0.12 + ngx_http_redis2_module was configured adding module in ../ngx_http_redis-0.3.7 + ngx_http_redis_module was configured adding module in ../nginx_upstream_check_module-0.3.0 checking for ngx_http_upstream_check_module ... found + ngx_http_upstream_check_module was configured adding module in ../openresty-memc-nginx-module-4f6f78f + ngx_http_memc_module was configured adding module in ../openresty-srcache-nginx-module-ffa9ab7 + ngx_http_srcache_filter_module was configured adding module in ../headers-more-nginx-module-0.29 + ngx_http_headers_more_filter_module was configured configuring additional dynamic modules adding module in ../ngx_pagespeed-release-1.10.33.5-beta mod_pagespeed_dir=../ngx_pagespeed-release-1.10.33.5-beta/psol/include build_from_source=false checking for psol ... found List of modules (in reverse order of applicability): ngx_http_write_filter_module ngx_http_header_filter_module ngx_http_chunked_filter_module ngx_http_v2_filter_module ngx_http_range_header_filter_module ngx_http_gzip_filter_module ngx_http_postpone_filter_module ngx_http_ssi_filter_module ngx_http_charset_filter_module ngx_http_sub_filter_module ngx_http_addition_filter_module ngx_http_userid_filter_module ngx_http_headers_filter_module checking for psol-compiler-compat ... found + ngx_pagespeed was configured On CentOS 7.2, Centmin Mod 123.09beta01 auto switches back from Clang to GCC compiler for ngx_pagespeed 1.10 branch compatibility. dynamic modules listing Code: dynamic module directory at /usr/local/nginx/modules total 18M drwxr-xr-x 2 root root 4.0K Feb 18 17:02 . drwxr-xr-x 10 root root 4.0K Feb 18 03:49 .. -rwxr-xr-x 1 root root 122K Feb 18 17:02 ngx_http_geoip_module.so -rwxr-xr-x 1 root root 142K Feb 18 17:02 ngx_http_image_filter_module.so -rwxr-xr-x 1 root root 17M Feb 18 17:02 ngx_pagespeed.so -rwxr-xr-x 1 root root 545K Feb 18 17:02 ngx_stream_module.so Enable ngx_pagespeed as per instructions at centminmod.com/nginx_ngx_pagespeed.html and check headers via curl Code: curl -sI localhost | grep X-Page-Speed X-Page-Speed: 1.10.33.5-0
Done that - thanks for the guide.. Code: [root@sarah centminmod]# curl -sI localhost | grep X-Page-Speed X-Page-Speed: 1.10.33.5-0 Code: [root@sarah centminmod]# nginx -V nginx version: nginx/1.9.11 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) built with LibreSSL 2.2.6 TLS SNI support enabled configure arguments: --with-ld-opt='-lrt -ljemalloc -Wl,-z,relro -Wl,-rpath,/usr/local/lib' --with-cc-opt='-m64 -mtune=native -mfpmath=sse -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2' --sbin-path=/usr/local/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_stub_status_module --with-http_secure_link_module --with-openssl-opt=enable-tlsext --add-module=../nginx-module-vts --with-libatomic --with-threads --with-stream=dynamic --with-stream_ssl_module --with-http_gzip_static_module --add-module=../ngx_brotli --add-dynamic-module=../ngx_pagespeed-release-1.10.33.5-beta --with-http_sub_module --with-http_addition_module --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_realip_module --add-module=../nginx-accesskey-2.0.3 --add-module=../nginx-http-concat-master --add-module=../ngx-fancyindex-0.3.6 --add-module=../ngx_cache_purge-2.3 --add-module=../ngx_devel_kit-0.2.19 --add-module=../set-misc-nginx-module-0.29 --add-module=../echo-nginx-module-0.58 --add-module=../redis2-nginx-module-0.12 --add-module=../ngx_http_redis-0.3.7 --add-module=../nginx_upstream_check_module-0.3.0 --add-module=../openresty-memc-nginx-module-4f6f78f --add-module=../openresty-srcache-nginx-module-ffa9ab7 --add-module=../headers-more-nginx-module-0.29 --with-pcre=../pcre-8.38 --with-pcre-jit --with-http_ssl_module --with-http_v2_module --with-openssl=../libressl-2.2.6
nice looking good with ccache compiler caching work with GCC 4.8.5 for recompiles first time compiling Nginx 1.9.11 with ngx_pagespeed 1.10 dynamic module Code: Total Nginx Upgrade Time: 95.986625830 seconds second time compiling when ccache compiler kicks in ~38.5% faster Code: Total Nginx Upgrade Time: 59.024959167 seconds
And one fast test on webpagetest.org with pagespeed enabled gave me on A instead of B on cache static content. So - something must work ;-) ..
Can only dream about those times you got there - mine says: Code: Total Nginx Upgrade Time: 207.794409091 seconds
Indeed - The last about cdn - I can't figured it out - why don't I get any readings on that? - But I will get it nailed in time ..