• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

Input How to compile NGINX with additional modules ( pagespeed / cache_purge / headers-more / and others )

U

UFHH01

Guest
Hi all Pleskians,

Global informations for this Plesk - contribution:
I noticed, that Plesk doesn't provide a decent solution/description/documentation on "How to compile NGINX with additional modules" yet and unfortunately, there is no KB - article for this as well, which provides the necessary steps.

Some Plesk - users just don't want to wait for NGINX features, which are global standards by now ( i.e. Google Pagespeed, the availability to use the "cache_purge" - module, or to use the "headers_more" - features ) and sometimes, they don't want to wait for Plesk updates/upgrades/patches for actual NGINX releases, to be "up-to-date" for their customers.

Pls. note, that this thread just describes the COMPILING STEPS and not possible NGINX - configurations, because that would go beyond the scope. If you desire help for depending configurations, pls. consider to open a NEW thread in the forum. ;)


To start:

Be sure that you have the following packages installed on your server, before you start ( depending to your operating system, this list might vary! ):

"gcc-c++" "pcre-devel" / "libpcre3"+"libpcre3-dev" "zlib-devel" / "zlib1g-dev" "make" "unzip" "Development Tools" "build-essential"

On CentOS/RHEL - based - systems, you could use the example - command:
Code:
yum group install "Development Tools"

or

yum groupinstall "Development Tools"

or/and
Code:
yum install gcc-c++ pcre-devel zlib-devel make unzip

and optional, if not already installed:
Code:
yum install perl-XML-LibXML libxslt-devel libxslt-python perl-XML-LibXSLT gd-devel libXpm-devel perl-ExtUtils-Embed gperftools gperftools-devel


On Debian/Ubuntu - based systems, you would use the example - command:
Code:
aptitude install build-essential zlib1g-dev libpcre3 libpcre3-dev unzip

and optional, if not already installed:
Code:
aptitude install libperl-dev libxml-libxml-perl libxml2-dev libxml2-utils python-libxml2 libxslt1.1 libxslt1-dev python-libxslt1 libxml-filter-xslt-perl libxml-libxslt-perl libgd-dev libgd-perl libgd-text-perl python-gd libgoogle-perftools4 libgoogle-perftools-dev



Let's start with the "step-by-step guide":

1. Please check the latest releases ( NGINX and possible modules ):

Official NGINX - download page: => nginx: download

Official ngx_pagespeed - download page:
=> Releases · pagespeed/ngx_pagespeed · GitHub

Official Google brotli - download page: => Releases · google/brotli · GitHub

Official ngx_cache_purge - download page:
=> Releases · FRiCKLE/ngx_cache_purge · GitHub

Official ngx_slowfs_cache - download page:
=> Releases · FRiCKLE/ngx_slowfs_cache · GitHub

Official ngx_coolkit - download page: => Releases · FRiCKLE/ngx_coolkit · GitHub

Official headers-more-nginx-module - download page:
=> Releases · openresty/headers-more-nginx-module · GitHub


2. Next, pls. consider to prepare your server with download folders and download the desired NGINX - version and ( possible ) modules:

Code:
mkdir -p /root/addons/nginx && cd /root/addons/nginx
Currently
, the latest ( current ) NGINX - version is 1.13.6, so you would continue with:
Code:
http://nginx.org/download/nginx-1.13.6.tar.gz

tar -xvf nginx-1.13.6.tar.gz

cd /root/addons/nginx/nginx-1.13.6

... and you could now continue with the above mentioned modules - downloads:
Code:
wget https://github.com/FRiCKLE/ngx_cache_purge/archive/2.3.tar.gz
wget https://github.com/FRiCKLE/ngx_coolkit/archive/0.2.tar.gz
wget https://github.com/FRiCKLE/ngx_slowfs_cache/archive/1.10.tar.gz
wget https://github.com/openresty/headers-more-nginx-module/archive/v0.32.tar.gz
wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.3-stable.tar.gz

3. We need to extract the downloaded NGINX - version and the ( possible ) modules:
( Because I like it "tidy" on my servers, I rename files and folders sometimes )
Code:
mv 2.3.tar.gz ngx_cache_purge-2.3.tar.gz
tar -xvf ngx_cache_purge-2.3.tar.gz
mv 0.2.tar.gz ngx_coolkit-0.2.tar.gz
tar -xvf ngx_coolkit-0.2.tar.gz
mv 1.10.tar.gz ngx_slowfs_cache-1.10.tar.gz
tar -xvf ngx_slowfs_cache-1.10.tar.gz
mv v0.32.tar.gz ngx_headers-more-v0.32.tar.gz
tar -xvf ngx_headers-more-v0.32.tar.gz
mv headers-more-nginx-module-0.32 ngx_headers-more-0.32
tar -xzf v1.12.34.3-stable.tar.gz
cd ngx_pagespeed-1.12.34.3-stable
wget https://dl.google.com/dl/page-speed/psol/1.12.34.2-x64.tar.gz
tar -xzvf 1.12.34.2-x64.tar.gz
rm 1.12.34.2-x64.tar.gz
cd ..
rm *.gz
4. Here is a NEW part ( implemented "Google brotli" - 01.10.2017 ):
Code:
cd /usr/share/nginx/modules
git clone https://github.com/google/ngx_brotli.git
cd ngx_brotli/
git submodule update --init --recursive
5. Here is a NEW part ( implemented "OpenSSL 1.1.1-dev" support, so that TLSv1.3 ciphers can be used - 01.10.2017 ):
Code:
cd /usr/share
git clone https://github.com/openssl/openssl.git
cd openssl
git checkout tls1.3-draft-18

./config shared enable-tls1_3 --prefix=/usr/share/openssl --openssldir=/usr/share/openssl -Wl,-rpath,'$(LIBRPATH)'
 
Last edited by a moderator:
6. Prepare your NGINX - compilation by using standard linux - folders and RSYNC them with your previous extractions:
Code:
cd /root/addons/nginx/nginx-1.13.6

mkdir -p /usr/share/nginx/modules/ngx_cache_purge-2.3
rsync -r /root/addons/nginx/nginx-1.13.6/ngx_cache_purge-2.3/* /usr/share/nginx/modules/ngx_cache_purge-2.3
mkdir -p /usr/share/nginx/modules/ngx_coolkit-0.2
rsync -r /root/addons/nginx/nginx-1.13.6/ngx_coolkit-0.2/* /usr/share/nginx/modules/ngx_coolkit-0.2
mkdir -p /usr/share/nginx/modules/ngx_slowfs_cache-1.10
rsync -r /root/addons/nginx/nginx-1.13.6/ngx_slowfs_cache-1.10/* /usr/share/nginx/modules/ngx_slowfs_cache-1.10
mkdir -p /usr/share/nginx/modules/ngx_headers-more-0.32
rsync -r /root/addons/nginx/nginx-1.13.6/ngx_headers-more-0.32/* /usr/share/nginx/modules/ngx_headers-more-0.32
mkdir -p /usr/share/nginx/modules/ngx_pagespeed-1.12.34.3-stable
rsync -r /root/addons/nginx/nginx-1.13.6/ngx_pagespeed-1.12.34.3-stable/* /usr/share/nginx/modules/ngx_pagespeed-1.12.34.3-stable

7. As a final step, you would now edit your serverwide "/etc/nginx/nginx.conf" - configuration file and add/edit your own, unique global settings. I recommend at least these examples, to profit from your unique nginx - compilation:

For "brotli":
Code:
        brotli on;
        brotli_static on;
        brotli_types text/html text/plain text/css application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon image/vnd.microsoft.icon image/bmp image/svg+xml;
        brotli_comp_level 8;


For Google PageSpeed:
Code:
        pagespeed on;
        pagespeed LowercaseHtmlNames on;
        pagespeed XHeaderValue "Powered by ngx_pagespeed and UF";
        pagespeed StaticAssetPrefix /static/;
        pagespeed FileCachePath /var/ngx_pagespeed_cache;
        pagespeed PreserveUrlRelativity on;
        pagespeed EnableFilters combine_css,rewrite_css,move_css_above_scripts,combine_javascript,rewrite_javascript;
        pagespeed EnableFilters lazyload_images,inline_preview_images,resize_mobile_images,inline_google_font_css,rewrite_style_attributes;
        pagespeed EnableFilters prioritize_critical_css,make_google_analytics_async,outline_css,outline_javascript,move_css_to_head;
        pagespeed EnableFilters include_js_source_maps,canonicalize_javascript_libraries,local_storage_cache,convert_to_webp_lossless,insert_image_dimensions;
        pagespeed EnableFilters elide_attributes,extend_cache_pdfs,sprite_images,trim_urls,pedantic;
        pagespeed EnableFilters remove_quotes,dedup_inlined_images,insert_dns_prefetch,remove_comments,collapse_whitespace;
        pagespeed EnableFilters in_place_optimize_for_browser;

... and please don't forget, to setup your NEW ciphers lists at "/etc/nginx/conf.d/ssl.conf" as for example:
Code:
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers 'TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
    ssl_prefer_server_ciphers on;
    ssl_ecdh_curve secp384r1;

( Pls. make as well a BACKUP for "nginx.conf" and "ssl.conf", before AND after your manual changes, so that you don't loose the new and old settings, in case of Plesk updates/upgrades/patches! ;) )

8. You should now be able to COMPILE your NGINX - version, with the example command:
Code:
cd /root/addons/nginx/nginx-1.13.6

./configure --prefix=/etc/nginx \
    --sbin-path=/usr/sbin/nginx \
    --conf-path=/etc/nginx/nginx.conf \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --lock-path=/var/lock/nginx.lock \
    --pid-path=/var/run/nginx.pid \
    --http-client-body-temp-path=/var/lib/nginx/body \
    --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
    --http-proxy-temp-path=/var/lib/nginx/proxy \
    --http-scgi-temp-path=/var/lib/nginx/scgi \
    --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
    --user=nginx \
    --group=nginx \
    --with-debug \
    --with-file-aio \
    --with-google_perftools_module \
    --with-mail \
    --with-mail_ssl_module \
    --with-threads \
    --with-select_module \
    --with-stream \
    --with-stream_ssl_module \
    --with-http_addition_module \
    --with-http_auth_request_module \
    --with-http_dav_module \
    --with-http_flv_module \
    --with-http_geoip_module \
    --with-http_gunzip_module \
    --with-http_gzip_static_module \
    --with-http_image_filter_module \
    --with-http_mp4_module \
    --with-http_perl_module \
    --with-http_random_index_module \
    --with-http_realip_module \
    --with-http_secure_link_module \
    --with-http_stub_status_module \
    --with-http_sub_module \
    --with-http_ssl_module \
    --with-http_v2_module \
    --with-http_xslt_module \
    --with-poll_module \
    --with-openssl=/usr/share/openssl \
    --with-openssl-opt=enable-tls1_3 \
    --add-module=/usr/share/nginx/modules/ngx_brotli \
    --add-module=/usr/share/nginx/modules/ngx_pagespeed-1.12.34.3-stable \
    --add-module=/usr/share/passenger/ngx_http_passenger_module \
    --add-module=/usr/share/nginx/modules/ngx_cache_purge-2.3 \
    --add-module=/usr/share/nginx/modules/ngx_coolkit-0.2 \
    --add-module=/usr/share/nginx/modules/ngx_slowfs_cache-1.10 \
    --add-module=/usr/share/nginx/modules/ngx_headers-more-0.32

make

make install

Pls. INSPECT the output of your above commands, because in case of missing packages, or/and unresolved dependencies, it can be, that you have to install additional ( missing ) packages on your server!!!


Now that you compiled your new NGINX version, consider to use a "NGINX configuration test" with:
Code:
nginx -t

( You will now experience, that you already loaded the phusion passenger module, which makes the configuration file "/etc/nginx/modules.conf.d/phusion-passenger.conf" obsolete.
Pls. remove it with
Code:
rm /etc/nginx/modules.conf.d/phusion-passenger.conf
and repeat the "nginx -t" command! )​

... and when you don't experience issues/errors/problems, you can now restart your current NGINX service:
Code:
service nginx restart



Pls. consider to setup the Plesk - package "sw-nginx" to "hold" in your software - package manager, in order to avoid automatic updates/upgrades/patches from Plesk for this package!
( Pls. see for informations and examples: => How to stop packages from being updated in Linux | Linuxaria )


Additional links, which might help you to find informations, solutions and discussions:




If you experience any issues/errors/problems, pls. don't forget to include depending - log - files, add your operating system and consider to explain in detail, at which step of the "How-To" you experienced the issue/error/problem.

( updated: 17.10.2017 )
 
Last edited by a moderator:
I had trouble with post 3

The downloads mv did cut & past :-(

mv from /root/addons/nginx/ folder name

In addition in my install I needed to enable the passenger_module first.

Lastly PageSpeed needs to be enabled for given domain under plesk:

I used

pagespeed on;

# Needs to exist and be writable by nginx. Use tmpfs for best performance.
pagespeed FileCachePath /var/cache/ngx_pagespeed_cache;
pagespeed EnableFilters combine_css,combine_javascript,combine_heads,convert_meta_tags,recompress_images;

# Ensure requests for pagespeed optimized resources go to the pagespeed handler
# and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }

gzip on;
gzip_buffers 16 8k;
gzip_comp_level 1;
gzip_http_version 1.1;
gzip_min_length 10;
gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon application/vnd.ms-fontobject font/opentype application/x-font-ttf;
gzip_vary on;
gzip_proxied any; # Compression for all requests.
gzip_disable "msie6";

location ~* \.(?:ico|css|js|gif|jpg|jpeg|png)$ {
expires 30d;
add_header Pragma public;
add_header Cache-Control “public”;
try_files $uri @fallback;
}
 
5. You should now be able to COMPILE your NGINX - version, with the example command:
Code:
cd /root/addons/nginx/nginx-1.11.7

./configure --prefix=/etc/nginx \
    --sbin-path=/usr/sbin/nginx \
    --conf-path=/etc/nginx/nginx.conf \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --lock-path=/var/lock/nginx.lock \
    --pid-path=/var/run/nginx.pid \
    --http-client-body-temp-path=/var/lib/nginx/body \
    --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
    --http-proxy-temp-path=/var/lib/nginx/proxy \
    --http-scgi-temp-path=/var/lib/nginx/scgi \
    --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
    --user=nginx \
    --group=nginx \
    --with-debug \
    --with-file-aio \
    --with-google_perftools_module \
    --with-ipv6 \
    --with-mail \
    --with-mail_ssl_module \
    --with-threads \
    --with-select_module \
    --with-stream \
    --with-stream_ssl_module \
    --with-http_addition_module \
    --with-http_auth_request_module \
    --with-http_dav_module \
    --with-http_flv_module \
    --with-http_geoip_module \
    --with-http_gunzip_module \
    --with-http_gzip_static_module \
    --with-http_image_filter_module \
    --with-http_mp4_module \
    --with-http_perl_module \
    --with-http_random_index_module \
    --with-http_realip_module \
    --with-http_secure_link_module \
    --with-http_stub_status_module \
    --with-http_sub_module \
    --with-http_ssl_module \
    --with-http_v2_module \
    --with-http_xslt_module \
    --with-poll_module \
    --add-module=/usr/share/passenger/ngx_http_passenger_module \
    --add-module=/usr/share/nginx/modules/ngx_pagespeed-1.12.34.2-beta
    --add-module=/usr/share/nginx/modules/ngx_cache_purge-2.3 \
    --add-module=/usr/share/nginx/modules/ngx_slowfs_cache-1.10 \
    --add-module=/usr/share/nginx/modules/ngx_coolkit-0.2rc3 \
    --add-module=/usr/share/nginx/modules/ngx_headers-more-0.32 \

make

make install

Hi UFHH01,
I have found an error in the installation process in step 5, after compiled NGINX
The Error is:

You have set --with-debug for building nginx, but precompiled Debug binaries for
PSOL, which ngx_pagespeed depends on, aren't available. If you're trying to
debug PSOL you need to build it from source. If you just want to run nginx with
debug-level logging you can use the Release binaries.

Use the available Release binaries? [Y/n] y
mod_pagespeed_dir=/usr/share/nginx/modules/ngx_pagespeed-1.12.34.2-beta/psol/include
build_from_source=false
checking for psol ... not found
./configure: error: module ngx_pagespeed requires the pagespeed optimization library.
Look in /root/addons/nginx/nginx-1.11.8/objs/autoconf.err for more details.


Can you help me please?
Thanks
 
Hi bonny3,

pls. READ your ( possible ) error messages, in order to solve dependencies issues!

error: module ngx_pagespeed requires the pagespeed optimization library.
Look in /root/addons/nginx/nginx-1.11.8/objs/autoconf.err for more details.

checking for psol ... not found

Due to the fact, that you seem very unexperienced with Linux ( otherwise you would have added at least your current operating system and the depending errors from "autoconf.err", pls. consider to contact the Plesk Support ( => https://www.plesk.com/contact-us/support/#content-body ), or hire an experienced linux administrator to reach your desired goals. ;)
 
Hi bonny3,

pls. READ your ( possible ) error messages, in order to solve dependencies issues!






Due to the fact, that you seem very unexperienced with Linux ( otherwise you would have added at least your current operating system and the depending errors from "autoconf.err", pls. consider to contact the Plesk Support ( => https://www.plesk.com/contact-us/support/#content-body ), or hire an experienced linux administrator to reach your desired goals. ;)

I am not a guru, but what I have learned I have to learn alone.
this is a forum and ask for advice, but I see that you prefer to avoid.
Thanks Anyway
 
Hi bonny3,

this is a forum and ask for advice, but I see that you prefer to avoid.
Sorry, but your conclusion is absolutely wrong, which is proven by the fact of my posts / likes and best answers in this forum. Your current linux knowledge and your server administration skills are just insufficient right now to reach the desired goal, if you are unable to solve the dependencies issue(s) - you even insist of discussing my answer, instead of providing necessary informations, so that possible solutions and work-arounds can't be given, which leads again to my previous answer - sorry.
 
Hi bonny3,


Sorry, but your conclusion is absolutely wrong, which is proven by the fact of my posts / likes and best answers in this forum. Your current linux knowledge and your server administration skills are just insufficient right now to reach the desired goal, if you are unable to solve the dependencies issue(s) - you even insist of discussing my answer, instead of providing necessary informations, so that possible solutions and work-arounds can't be given, which leads again to my previous answer - sorry.

Hi UFHH01,
Thanks for your answer,
I have answered in this way because you told me to contact "Plesk Support or hire an experienced Linux administrator", if I had chosen that road would not be here to write in the forum and try to learn this world that interests me .
having said that, you can help me understand and fix my mistake please?
This is the my file autoconf.err

Thanks
Best Regards
Alessandro
 

Attachments

  • autoconf.zip
    2.9 KB · Views: 28
pls. consider to contact the Plesk Support ( => https://www.plesk.com/contact-us/support/#content-body ), or hire an experienced linux administrator to reach your desired goals.
Hi,
Today I want to make a contribution to solving my problem I found when installing the module Nginx I hope will be of help to those who have had the same my error.
I not being an expert, as I said, I had to study the problem and realize that it was caused by an obsolete version of GCC, because centos 6.8 arrives at version 4.4.7. In this link you can find the solution of the problem
https://gist.github.com/stephenturner/e3bc5cfacc2dc67eca8b
the gcc version, not updated with "yum update gcc-c ++" will need to download a new repo. I followed the explanations of the link https://gist.github.com/stephenturner/e3bc5cfacc2dc67eca8b and I managed to install the nginx_pagespeed module.
You have to upgrade this module to version gcc 4.8 for install nginx page_speed.
With centos 7 there should not be this problem.
I would have appreciated some help from this forum, but unfortunately, I was told to ask for help elsewhere..
Regards
 
First of all, I strongly agree with bonny3.:)

UFHH01s approach really lacks information on the specific environment he used and in which he expects it to work (e. g. Linux version, compiler version,...). So, in turn, he expected more from you then he was willing to supply :eek:

However, professionally speaking this approach also sounds a bit more like a tinkered piece of handicraft for home use under a specific environment, then like anything to use in a real production environment, e.g. at a company. Sorry. How do you integrate automated updates on this? If only one of the source components (these are not only the six mentioned he mentioned at the beginning) gets one of these frequent itty bitty updates, you will have to go through the whole process again... - at least for security related updates this is without any alternatives... That enormously rises the total cost!

Also, for security reasons as well as for reliableness this should never be performed on a real live production server. Always prepare it as a whole on a development server, test it thoroughly, if possible put it to another test server, and then bring it to the production environment.
 
At step 3 try mv v1.12.34.2-beta.tar.gz ngx_pagespeed-v1.12.34.2-beta.tar.gz

but have error

mv: cannot stat ‘v1.12.34.2-beta.tar.gz’: No such file or directory
 
Hi viprus,

pls. make sure, that you actually DOWNLOADED the *.tar.gz: => https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2-beta.tar.gz . Your error - message states, that the file to move couldn't be found on your server in the current directory.

Second, the archive provider changed the current name of this file to "ngx_pagespeed-1.12.34.2-beta.tar.gz" ( corrected/edited the tutorial above and updated it as well to the current NGINX - version "1.11.10" ).
 
Last edited by a moderator:
Hi viprus,

pls. make sure, that you actually DOWNLOADED the *.tar.gz: => https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2-beta.tar.gz . Your error - message states, that the file to move couldn't be found on your server in the current directory.

Second, the archive provider changed the current name of this file to "ngx_pagespeed-1.12.34.2-beta.tar.gz" ( corrected/edited the tutorial above and updated it as well to the current NGINX - version "1.11.10" ).

Hi UFHH01,

thank you. I edit name v1.12.34.2-beta.tar.gz to ngx_pagespeed-1.12.34.2-beta.tar.gz and then OK.

But at step 4 cd /root/addons/nginx/nginx-1.11.10

I have that my folder nginx-1.11.10 already placed at /root/nginx-1.11.10 ... can i continue like cd /root/nginx-1.11.10 ?
 
The tutorial has been updated to the most recent versions and missing ( optional, but still needed! ) packages have been added - for Debian/Ubuntu AND CentOS/RHEL ! ;)
 
Last edited by a moderator:
With a few error correction of the above, I get all the way to MAKE install but this lat step give me a error that i´m unable to solve.

Code:
root@vps ~/addons/nginx/nginx-1.13.0 # nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

root@vps ~/addons/nginx/nginx-1.13.0 # make install
make -f objs/Makefile install
make[1]: Entering directory '/root/addons/nginx/nginx-1.13.0'
cd objs/src/http/modules/perl && make install
make[2]: Entering directory '/root/addons/nginx/nginx-1.13.0/objs/src/http/modules/perl'
Manifying 1 pod document
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERROR: Can't create '/usr/local/man/man3'
mkdir /usr/local/man: File exists at /usr/share/perl/5.22/ExtUtils/Install.pm line 477.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 at -e line 1.
Makefile:794: recipe for target 'pure_site_install' failed
make[2]: *** [pure_site_install] Error 17
make[2]: Leaving directory '/root/addons/nginx/nginx-1.13.0/objs/src/http/modules/perl'
objs/Makefile:2290: recipe for target 'install_perl_modules' failed
make[1]: *** [install_perl_modules] Error 2
make[1]: Leaving directory '/root/addons/nginx/nginx-1.13.0'
Makefile:11: recipe for target 'install' failed
make: *** [install] Error 2
 
Back
Top