Nginx
- Instalación de Moodle
- Inicio Rápido de Instalación
- Cron
- Nginx
- Apache
- Internet Information Services
- Instalar plugins
- Instalación FAQ
- Actualización
- Visión general de actualización
- Implementar actualizaciones automáticas
- Git para Administradores
- Administración por línea de comando
- Actualización FAQ
- Migración de Moodle
- Tamaño de archivo subido
- Crear archivo .htaccess
- Moodle en una netbook sin internet
Nota: Pendiente de Traducir. ¡Anímese a traducir esta página!. ( y otras páginas pendientes)
Nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. The nginx project started with a strong focus on high concurrency, high performance and low memory usage. It is licensed under the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X, Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of concept port for Microsoft Windows.
The following is community-contributed documentation on Nginx configuration. Amendmends and additions are welcome.
Nginx configuration
PHP-FPM
Nginx is usually configured to interface with PHP via php-fpm. This is both fast and robust.
php.ini
Typically the php-fpm daemon with have it's own php.ini e.g. in debian it is /etc/php5/fpm/php.ini. The following setting is required,
php.ini
cgi.fix_pathinfo=0
Nginx
Slasharguments
Add the following 'slash arguments' compatible (see Usando slash arguments) 'location' block to your vhosts 'server' configuration in your nginx configuration.
nginx.conf location:
location ~ [^/]\.php(/|$) { # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000 (or your php-fpm socket); include fastcgi_params; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
XSendfile también-conocido-como X-Accel-Redirect
Setting Moodle and Nginx to use XSendfile functionality is a big win as it frees PHP from delivering files allowing Nginx to do what it does best, i.e. deliver files.
Enable xsendfile for Nginx in Moodles config.php, this is documented in the config-dist.php, a minimal configuration look like this,
$CFG->xsendfile = 'X-Accel-Redirect'; $CFG->xsendfilealiases = array( '/dataroot/' => $CFG->dataroot );
Accompany this with a matching 'location' block in your nginx server configuration.
location /dataroot/ { internal; alias <full_moodledata_path>; #make sure the path ends with / }
The definition of 'internal' here is important as it prevents client access to your dataroot.
Vea también
- Real PATH_INFO support:
- Internal rewriting to the HTTP GET file parameter: