apache / incubator-pagespeed-ngx

Automatic PageSpeed optimization module for Nginx
http://ngxpagespeed.com/
Apache License 2.0
4.37k stars 362 forks source link

Install mod page speed on centOS8 #1687

Open paweldesign opened 4 years ago

paweldesign commented 4 years ago

I apologize for my ignorance, but I can't install the ngx_pagespeed form Can I have a guide or commands Thanks

paweldesign commented 4 years ago

cd wget https://github.com/apache/incubator-pagespeed-ngx/archive/v1.13.35.2-stable.zip unzip v1.13.35.2-stable.zip nps_dir=$(find . -name "*pagespeed-ngx-1.13.35.2-stable" -type d) cd "$nps_dir" psol_url=https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz [ -e scripts/format_binary_url.sh ] && psol_url=$(scripts/format_binary_url.sh PSOL_BINARY_URL) wget ${psol_url} tar -xzvf $(basename ${psol_url}) # extracts to psol/

cd wget http://nginx.org/download/nginx-1.18.0.tar.gz tar -xvzf nginx-1.18.0.tar.gz cd nginx-1.18.0/ ./configure --add-module=$HOME/$nps_dir --user=nobody --group=nobody --pid-path=/var/run/nginx.pid

ERROR

adding module in /root/./incubator-pagespeed-ngx-1.13.35.2-stable mod_pagespeed_dir=/root/./incubator-pagespeed-ngx-1.13.35.2-stable/psol/include build_from_source=false checking for psol ... not found ./configure: error: module ngx_pagespeed requires the pagespeed optimization library. Look in /root/nginx-1.18.0/objs/autoconf.err for more details.

Lofesa commented 4 years ago

Hi In the /root/./incubator-pagespeed-ngx-1.13.35.2-stable directory, have you a psol subfolder? The psol library file (https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz) must be untarred in this subfolder.

paweldesign commented 4 years ago

checking the log, the libuuid-devel library was missing. checking the log, the libuuid-devel library was missing I managed to move on.

uhlhosting commented 3 years ago

@paweldesign did you managed to deploy it? I have all the libraries in place, still got stuck.

paweldesign commented 3 years ago

FOR NGINX

cd /usr/local/src/ dnf update cat /etc/redhat-release CentOS Linux release 8.1.1911 (Core) dnf groupinstall 'Development Tools' dnf install epel-release sudo yum -y install gcc-c++ pcre-devel zlib-devel libuuid-devel make wget nano unzip PCRE version 8.44 wget https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz && tar zxvf pcre-8.44.tar.gz

zlib version 1.2.11 wget https://www.zlib.net/zlib-1.2.11.tar.gz && tar xzvf zlib-1.2.11.tar.gz

OpenSSL version 1.1.1d wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz && tar zxvf openssl-1.1.1d.tar.gz dnf install perl perl-devel perl-ExtUtils-Embed libxslt libxslt-devel libxml2 libxml2-devel gd gd-devel GeoIP GeoIP-devel

wget https://github.com/vozlt/nginx-module-vts/archive/v0.1.18.zip && unzip v.0.1.18.zip mv nginx-module-vts-0.1.18 nginx-module-vts git clone https://github.com/eustas/ngx_brotli.git cd ngx_brotli && git submodule update --init cd ..

sudo yum -y install gcc-c++ pcre-devel zlib-devel libuuid-devel make wget nano unzip wget https://github.com/apache/incubator-pagespeed-ngx/archive/v1.13.35.2-stable.zip unzip v1.13.35.2-stable.zip nps_dir=$(find . -name "*pagespeed-ngx-1.13.35.2-stable" -type d) cd "$nps_dir" psol_url=https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz [ -e scripts/format_binary_url.sh ] && psol_url=$(scripts/format_binary_url.sh PSOL_BINARY_URL)wget ${psol_url} tar -xzvf $(basename ${psol_url}) # extracts to psol/ cd wget http://nginx.org/download/nginx-1.18.0.tar.gz tar -xvzf nginx-1.18.0.tar.gz cd nginx-1.18.0/

./configure --prefix=/etc/nginx \ --sbin-path=/usr/sbin/nginx \ --modules-path=/usr/lib64/nginx/modules \ --conf-path=/etc/nginx/nginx.conf \ --error-log-path=/var/log/nginx/error.log \ --pid-path=/var/run/nginx.pid \ --lock-path=/var/run/nginx.lock \ --user=nginx \ --group=nginx \ --build=CentOS \ --builddir=nginx-1.18.0 \ --with-select_module \ --with-poll_module \ --with-threads \ --with-file-aio \ --with-http_ssl_module \ --with-http_v2_module \ --with-http_realip_module \ --with-http_addition_module \ --with-http_xslt_module=dynamic \ --with-http_image_filter_module=dynamic \ --with-http_geoip_module=dynamic \ --with-http_sub_module \ --with-http_dav_module \ --with-http_flv_module \ --with-http_mp4_module \ --with-http_gunzip_module \ --with-http_gzip_static_module \ --with-http_auth_request_module \ --with-http_random_index_module \ --with-http_secure_link_module \ --with-http_degradation_module \ --with-http_slice_module \ --with-http_stub_status_module \ --with-http_perl_module=dynamic \ --with-perl_modules_path=/usr/lib64/perl5 \ --with-perl=/usr/bin/perl \ --http-log-path=/var/log/nginx/access.log \ --http-client-body-temp-path=/var/cache/nginx/client_temp \ --http-proxy-temp-path=/var/cache/nginx/proxy_temp \ --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \ --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \ --http-scgi-temp-path=/var/cache/nginx/scgi_temp \ --with-mail=dynamic \ --with-mail_ssl_module \ --with-stream=dynamic \ --with-stream_ssl_module \ --with-stream_realip_module \ --with-stream_geoip_module=dynamic \ --with-stream_ssl_preread_module \ --with-compat \ --with-pcre=../pcre-8.44 \ --with-pcre-jit \ --with-zlib=../zlib-1.2.11 \ --with-openssl=../openssl-1.1.1d \ --with-openssl-opt=no-nextprotoneg \ --add-module=/usr/local/src/ngx_brotli \ --add-module=/usr/local/src/incubator-pagespeed-ngx-latest-stable \ --add-module=/usr/local/src/nginx-module-vts \ --with-cc-opt='-D_GLIBCXX_USE_CXX11_ABI=0 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'

WORK FOR ME!!!! BYE..BYE..

dvershinin commented 3 years ago

CentOS = Community Enterprise Operating System. By compiling on it, you're giving up SELinux, packages, and overall security. Or, in other words, you take out the "Enterprise" part and turn it into something of a mess.

For serious projects, I recommend using the commercial GetPageSpeed repository and follow instructions for quick and easy ngx_pagespeed install from the prebuilt package on CentOS 8.