For one client, I worked on optimization.
Server configuration: CentOS + ISP Manager + Nginx.
Here are the steps that helped to speed up WordPress.
Enabled compression and caching (for 45 days) in the panel under domain settings.
Effectively, these are the Nginx settings in the config file:
/etc/nginx/vhosts/example.com/example.com.ru.conf
Replaced:
nginx.x86_64 1.6.2-1.el6.ngx
-> nginx.x86_64 1.12.1-1.el6.ngx
Command to update to the latest version:
yum install nginx-1.12.1-1.el6.ngx
More details: How to instruct yum to install a specific version of package.
This was configured in the Nginx configuration file.
[[email protected] ~]# nginx -V
nginx version: nginx/1.12.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --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 --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --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 --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
Commands used:
yum install GeoIP-devel perl-ExtUtils-Embed libxslt-devel pcre-devel openssl-devel
bash <(curl -f -L -sS https://ngxpagespeed.com/install) --nginx-version latest
Edit yum.conf
to add the following line: exclude=nginx
vim /etc/yum.conf
gzip_vary on;
That's all!