Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CentOS 8, Directadmin with Nginx error installing brotli #114

Open
Theolodewijk opened this issue Jan 17, 2021 · 2 comments
Open

CentOS 8, Directadmin with Nginx error installing brotli #114

Theolodewijk opened this issue Jan 17, 2021 · 2 comments

Comments

@Theolodewijk
Copy link

Theolodewijk commented Jan 17, 2021

My installation but still get some errors.

Configuration, CentOS 8 with directadmin and last version of nginx.


cd /usr/local/src
git clone https://github.com/google/ngx_brotli
cd ngx_brotli
git submodule update --init

{ result
    [root@mail ngx_brotli]# git submodule update --init
    Submodule 'deps/brotli' (https://github.com/google/brotli.git) registered for path 'deps/brotli'
    Cloning into '/usr/local/src/ngx_brotli/deps/brotli'...
    Submodule path 'deps/brotli': checked out 'e61745a6b7add50d380cfd7d3883dd6c62fc2c71'
}

cd /usr/local/directadmin/custombuild
wget https://nginx.org/download/nginx-1.19.6.tar.gz
tar -zxvf nginx-1.19.6.tar.gz
cd nginx-1.19.6

./configure --with-compat --add-dynamic-module=/usr/local/src/ngx_brotli
make modules

nano /etc/nginx/nginx.conf

# add above the http block
load_module /usr/local/nginx/modules/ngx_http_brotli_filter_module.so;
load_module /usr/local/nginx/modules/ngx_http_brotli_static_module.so;

./configure --add-module=/usr/local/src/ngx_brotli
make && make install

{ result
    Configuration summary
    + using system PCRE library
    + OpenSSL library is not used
    + using system zlib library

    nginx path prefix: "/usr/local/nginx"
    nginx binary file: "/usr/local/nginx/sbin/nginx"
    nginx modules path: "/usr/local/nginx/modules"
    nginx configuration prefix: "/usr/local/nginx/conf"
    nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
    nginx pid file: "/usr/local/nginx/logs/nginx.pid"
    nginx error log file: "/usr/local/nginx/logs/error.log"
    nginx http access log file: "/usr/local/nginx/logs/access.log"
    nginx http client request body temporary files: "client_body_temp"
    nginx http proxy temporary files: "proxy_temp"
    nginx http fastcgi temporary files: "fastcgi_temp"
    nginx http uwsgi temporary files: "uwsgi_temp"
    nginx http scgi temporary files: "scgi_temp"
}

nginx -t

{ result
    [root@mail nginx-1.19.6]# nginx -t
    nginx: [emerg] "load_module" directive is specified too late in /etc/nginx/nginx.conf:14
    nginx: configuration file /etc/nginx/nginx.conf test failed
}  

# Error missing files.
mkdir /usr/modules
cp /usr/local/directadmin/custombuild/nginx-1.19.6/objs/*.so /usr/modules
ls /usr/modules
chmod 644 /usr/modules/*.soso

{ changed positon and fixed the missing files.
    [root@mail nginx-1.19.6]# nginx -t
    nginx: [emerg] module "/usr/modules/ngx_http_brotli_filter_module.so" is not binary compatible in /etc/nginx/nginx.conf:10
    nginx: configuration file /etc/nginx/nginx.conf test failed
}

systemctl reload nginx.service```
@dvershinin
Copy link

@Theolodewijk Apparently you compiled the module against an NGINX version that is different from the one installed. Check this article about DirectAdmin also.

@pujianto
Copy link

You can try this bash helper script to install or recompile the ngx_brotli module after updating nginx.
https://gist.github.com/pujianto/795e858f11ffc3073a24f60217fcba1a

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants