Nginx

From Freephile Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

We're planning to move to Nginx with PHP-FPM for faster execution and throughput for QualityBox.

The Nginx webiste has both examples for PHP-FPM and a Nginx recipe to serve MediaWiki


Measure twice, cut once[edit]

Always test your configuration file for syntax errors with nginx -t before restarting nginx.

Debugging[edit]

While working with nginx, if you use option -V then you get the full configuration of the current install (this from a local virtual machine):

nginx version: nginx/1.14.0 
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)  
built with OpenSSL 1.0.2k-fips  26 Jan 2017
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 --htt
p-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 --gr
oup=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 --w
ith-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-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC'
--with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'


Check whether debugging was enabled at compile time: nginx -V 2>&1 | grep -- '--with-debug' If the binary is not built for debugging, then you will not be able to see any debug log messages in the log file, and you won't be able to generate a core-dump or config dump as described at Debugging.

File Not Found[edit]

I kept getting 404's and one possibility to eliminate is whether or not your server has read access to the filesystem. You can check with:

# -H for set 'home' from /etc/password
# -lmo for long, mode, owners
sudo -H -u nginx namei -lmo /var/www/mediawiki

Other resources[edit]