incubator-pagespeed-cpanel icon indicating copy to clipboard operation
incubator-pagespeed-cpanel copied to clipboard

cannot be installed

Open marlowmedia opened this issue 8 years ago • 26 comments

Hey,

I'm trying to install it on my server, i've followed the first 2 steps but then what i get to this:

rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm

I get this error:

[root@server /]# rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm Installing ea-apache24-mod_pagespeed-latest-stable.src.rpm error: ea-apache24-mod_pagespeed-latest-stable.src.rpm cannot be installed

Why cant i install it on my cpanel/whm server? I've updated/upgraded to EasyApache4 so it should work. It doesnt give me any information as to why it cannot be installed but id love to find a solution to my issue.

CENTOS 7.2 x86_64 kvm – server WHM 56.0 (build 25)

Please help, thank you!

marlowmedia avatar Jul 11 '16 16:07 marlowmedia

same problem

KingServer avatar Aug 18 '16 00:08 KingServer

Try:

rm -rf /root/rpmbuild/RPMS/x86_64/ yum install -y rpm-build cpio ea-apache24-mod_version wget https://github.com/Prajithp/cpanel/blob/master/EA4/ea-apache24-mod_pagespeed-latest-stable.src.rpm rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm rpm -Uvh /root/rpmbuild/RPMS/x86_64/ea-apache24-mod_pagespeed*.rpm /etc/init.d/httpd restart

If you get:

error: File must begin with "/": %{httpd_moddir}/.so error: File must begin with "/": %{httpd_modconfdir}/.conf

Create the file /etc/rpm/macros.apache2 and put:

%_httpd_mmn 20120211x8664 %_httpd_apxs /usr/bin/apxs %_httpd_dir /etc/apache2 %_httpd_bindir %{_httpd_dir}/bin %_httpd_modconfdir %{_httpd_dir}/conf.modules.d %_httpd_confdir %{_httpd_dir}/conf.d %_httpd_contentdir /usr/share/apache2 %_httpd_moddir /usr/lib64/apache2/modules

Then, restart the process.

Source: https://github.com/pagespeed/cpanel/issues/44#issuecomment-207992947

ntorga avatar Aug 31 '16 05:08 ntorga

Hello ntorga Not work

Installing ea-apache24-mod_pagespeed-latest-stable.src.rpm error: ea-apache24-mod_pagespeed-latest-stable.src.rpm cannot be installed

KingServer avatar Aug 31 '16 07:08 KingServer

@ntorga is right, just change the wget to wget https://github.com/pagespeed/cpanel/raw/master/EA4/ea-apache24-mod_pagespeed-latest-stable.src.rpm

Thank you very much

yeya avatar Aug 31 '16 12:08 yeya

Glad I help you @yeya.

@KingServer did you rm the .rpm first? I mean, when you wget it, you will be saving like: ea-apache24-mod_pagespeed-latest-stable.src.rpm.1 or ea-apache24-mod_pagespeed-latest-stable.src.rpm.2

You have to rm the .rpm and then download it again. Like @yeya says, the right one is from PS cPanel repo.

Later I will write a shell script to install PS in a simpler way.

ntorga avatar Aug 31 '16 12:08 ntorga

@ntorga yes i deleted old .rpm file first, but unfortunately not working I'm using Centos 7.2 64bit

KingServer avatar Aug 31 '16 14:08 KingServer

Did you tried with both files?

wget https://github.com/pagespeed/cpanel/raw/master/EA4/ea-apache24-mod_pagespeed-latest-stable.src.rpm

or

wget https://github.com/Prajithp/cpanel/blob/master/EA4/ea-apache24-mod_pagespeed-latest-stable.src.rpm

ntorga avatar Aug 31 '16 14:08 ntorga

Not sure if it helps but, I have just successfully installed on CloudLinux 6.8; I did have to change to this:

# wget https://github.com/pagespeed/cpanel/raw/master/EA4/ea-apache24-mod_pagespeed-latest-stable.src.rpm # rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm (which errored) Added config in vi /etc/rpm/macros.apache2 # rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm # rpm -ivh /root/rpmbuild/RPMS/x86_64/ea-apache24-mod_pagespeed-latest-stable.x86_64.rpm # /etc/init.d/httpd restart

nbwpuk avatar Aug 31 '16 15:08 nbwpuk

Hello, @BatchHeader @ntorga i see the following error during rebuild

root@server [~]# rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm Installing ea-apache24-mod_pagespeed-latest-stable.src.rpm Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.YClSWF

  • umask 022
  • cd /root/rpmbuild/BUILD
  • wget -q -N -O mod-pagespeed-stable.rpm https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
  • exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.ZCTwES
  • umask 022
  • cd /root/rpmbuild/BUILD
  • rpm2cpio mod-pagespeed-stable.rpm
  • cpio -idmv argument is not an RPM package cpio: premature end of archive error: Bad exit status from /var/tmp/rpm-tmp.ZCTwES (%build)

RPM build errors: Bad exit status from /var/tmp/rpm-tmp.ZCTwES (%build)

Where is the problem ? and how do I fix

KingServer avatar Aug 31 '16 17:08 KingServer

I don't have a CentOS 7.2 to reproduce the error, but looks like a problem in the source package. As the log shows, the building path is /root/rpmbuild/BUILD, so:

rm -rf /root/rpmbuild/BUILD

Then, restart the process of installation normally.

ntorga avatar Aug 31 '16 18:08 ntorga

@ntorga i have deleted /root/rpmbuild/BUILD but not working i received some result

root@server [~]# rpmbuild --rebuild ea-apache24-mod_pagespeed-latest-stable.src.rpm Installing ea-apache24-mod_pagespeed-latest-stable.src.rpm Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.YClSWF

umask 022 cd /root/rpmbuild/BUILD wget -q -N -O mod-pagespeed-stable.rpm https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.ZCTwES umask 022 cd /root/rpmbuild/BUILD rpm2cpio mod-pagespeed-stable.rpm cpio -idmv argument is not an RPM package cpio: premature end of archive error: Bad exit status from /var/tmp/rpm-tmp.ZCTwES (%build)

KingServer avatar Aug 31 '16 18:08 KingServer

If you try:

cd /root/rpmbuild/BUILD wget -q -N -O mod-pagespeed-stable.rpm https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm rpm2cpio mod-pagespeed-stable.rpm | cpio -idmv

Do you get the same result, right?

ntorga avatar Aug 31 '16 18:08 ntorga

@ntorga i see the follwing message

root@server [~/rpmbuild/BUILD]# rpm2cpio mod-pagespeed-stable.rpm | cpio -idmv argument is not an RPM package cpio: premature end of archive

KingServer avatar Aug 31 '16 19:08 KingServer

Looks like your rpm2cpio isn't working right or the package was wrongly downloaded. Ok... is your server a production server or a test server? We could try catch the .so file from .deb, but I can't guarantee it's safe to do. If you wanna try (your risk):

mkdir -p /root/rpmbuild/BUILD cd /root/rpmbuild/BUILD wget -q -N -O mod-pagespeed-stable.deb https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb ar -p mod-pagespeed-stable.deb data.tar.gz | tar zx mv usr/lib64/httpd/modules/mod_pagespeed{,_ap24}.so . install -m755 mod_pagespeed_ap.so /etc/apache2/modules/ install -m755 mod_pagespeed_ap24.so /etc/apache2/modules/ wget https://raw.githubusercontent.com/pagespeed/cpanel/master/EA4/SOURCES/456_pagespeed.conf -O /etc/apache2/conf.modules.d/456_pagespeed.conf chmod 644 /etc/apache2/conf.modules.d/456_pagespeed.conf cd / && rm -rf /root/rpmbuild/BUILD /etc/init.d/httpd restart

At least that's the logic of .spec file. If it works, I will put it on a shell script.

ntorga avatar Aug 31 '16 19:08 ntorga

@ntorga

ar p mod-pagespeed-stable.deb data.tar.gz | tar zx

ar: /root/rpmbuild/BUILD/mod-pagespeed-stable.deb: File format not recognized

gzip: stdin: unexpected end of file tar: Child returned status 1 tar: Error is not recoverable: exiting now

KingServer avatar Aug 31 '16 23:08 KingServer

Try: ar x mod-pagespeed-stable.deb && tar -zvxf data.tar.gz

If doesn't work, post the output of: ar --version

ntorga avatar Sep 01 '16 01:09 ntorga

@ntorga

Unfortunately not working

root@server [~/rpmbuild/BUILD]# ar x mod-pagespeed-stable.deb && tar -zvxf data.tar.gz ar: mod-pagespeed-stable.deb: File format not recognized root@server [~/rpmbuild/BUILD]# ar --version GNU ar version 2.23.52.0.1-55.el7 20130226 Copyright 2013 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) any later version. This program has absolutely no warranty.

KingServer avatar Sep 01 '16 07:09 KingServer

Ok. Since "ar" and "rpm2cio" doesn't work for you, let's use dpkg in the same process:

yum -y install epel-release yum -y install dpkg mkdir -p /root/rpmbuild/BUILD cd /root/rpmbuild/BUILD wget -q -N -O mod-pagespeed-stable.deb https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb dpkg -x mod-pagespeed-stable.deb . mv usr/lib64/httpd/modules/mod_pagespeed{,_ap24}.so . install -m755 mod_pagespeed_ap.so /etc/apache2/modules/ install -m755 mod_pagespeed_ap24.so /etc/apache2/modules/ wget https://raw.githubusercontent.com/pagespeed/cpanel/master/EA4/SOURCES/456_pagespeed.conf -O /etc/apache2/conf.modules.d/456_pagespeed.conf chmod 644 /etc/apache2/conf.modules.d/456_pagespeed.conf cd / && rm -rf /root/rpmbuild/BUILD /etc/init.d/httpd restart

Let me know if you find any error. If you get success, you can remove dpkg:

yum -y remove dpkg

ntorga avatar Sep 01 '16 13:09 ntorga

@ntorga Thank you so much for your help.

root@server [~/rpmbuild/BUILD]# dpkg -x mod-pagespeed-stable.deb dpkg-deb: error: --extract needs a target directory. Perhaps you should be using dpkg --install ?

KingServer avatar Sep 01 '16 14:09 KingServer

That's not a problem. You are helping me improve my knowledge.

Nops. You canot run dpkg --install in RHEL/CentOS. We are using dpkg just to extract the .deb and get the .so files.

You forgot the dot in the end of the line:

dpkg -x mod-pagespeed-stable.deb .

. = destination, the dot means the working path, is the same as /root/rpmbuild/BUILD since you are there.

ntorga avatar Sep 01 '16 14:09 ntorga

@ntorga now i see the following error

root@server [~/rpmbuild/BUILD]# dpkg -x mod-pagespeed-stable.deb . dpkg-deb: error: `mod-pagespeed-stable.deb' is not a debian format archive

KingServer avatar Sep 01 '16 14:09 KingServer

Like I expected. Do you have a firewall on your server right?

Post the output of the following command, please:

wget -O mod-pagespeed-stable.deb https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb

You probably will get that the connection couldn't be done. So, if you get, try to open the ports 80 and 443 of outgoing tcp. If you use CSF, for example, just go to the firewall configurations and put 80,443 in TCP_OUT field and restart the firewall. Do that in the IPv6 part too if your server supports it.

ntorga avatar Sep 01 '16 14:09 ntorga

@ntorga

80 and 443 already added in TCP_OUT in csf firewall

output :

root@server [~/rpmbuild/BUILD]# wget -O mod-pagespeed-stable.deb https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb --2016-09-01 19:08:50-- https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb Resolving dl-ssl.google.com (dl-ssl.google.com)... 64.233.184.136, 64.233.184.93, 64.233.184.91, ... Connecting to dl-ssl.google.com (dl-ssl.google.com)|64.233.184.136|:443... connected. HTTP request sent, awaiting response... 302 Found Location: http://dl.google.com/service/prod_unavailable.html [following] --2016-09-01 19:08:50-- http://dl.google.com/service/prod_unavailable.html Resolving dl.google.com (dl.google.com)... 64.233.184.91, 64.233.184.136, 64.233.184.93, ... Connecting to dl.google.com (dl.google.com)|64.233.184.91|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 1487 (1.5K) [text/html] Saving to: ‘mod-pagespeed-stable.deb’

100%[=================================================================================================>] 1,487 --.-K/s in 0s

2016-09-01 19:08:50 (190 MB/s) - ‘mod-pagespeed-stable.deb’ saved [1487/1487]

KingServer avatar Sep 01 '16 14:09 KingServer

That's the problem!

Connecting to dl-ssl.google.com (dl-ssl.google.com)|64.233.184.136|:443... connected. HTTP request sent, awaiting response... 302 Found Location: http://dl.google.com/service/prod_unavailable.html [following]

Which is basically: "This product is not available in your country". So, you are downloading a HTML page as the package file. Since the wget command of the installer available on this official repo uses "-q" variable, you weren't seeing the problem.

You could try a mirror of the .deb or .rpm file; or use a proxy to download the file. I would download in my computer, then upload it via SFTP to the /root/rpmbuild/BUILD and run:

If you choose the .rpm file:

rpm2cpio mod-pagespeed-stable.rpm | cpio -idmv

If you choose the .deb file:

dpkg -x mod-pagespeed-stable.deb .

Then:

mv usr/lib64/httpd/modules/mod_pagespeed{,_ap24}.so . install -m755 mod_pagespeed_ap.so /etc/apache2/modules/ install -m755 mod_pagespeed_ap24.so /etc/apache2/modules/ wget https://raw.githubusercontent.com/pagespeed/cpanel/master/EA4/SOURCES/456_pagespeed.conf -O /etc/apache2/conf.modules.d/456_pagespeed.conf chmod 644 /etc/apache2/conf.modules.d/456_pagespeed.conf cd / && rm -rf /root/rpmbuild/BUILD /etc/init.d/httpd restart

ntorga avatar Sep 01 '16 15:09 ntorga

@ntorga Thank you so much for your great help, it's highly appreciated, i've now got it working with apache, should i make any changes to get it working with nginx as well? i have checked again and worked fine with apache and nginx

KingServer avatar Sep 01 '16 18:09 KingServer

@KingServer Glad I could help you. :smile:

ntorga avatar Sep 01 '16 19:09 ntorga