====== Nginx & PHP ====== This menu contains settings for FreshTomato's internal web server (Nginx) and optional support for PHP. Note that FreshTomato also has a built-in (httpd) web server used only for router administration. This additional minimal web server is based on a more modern version of Nginx. \\ \\ ===== Status ===== \\ {{:pasted:20220215-152554.png}} \\ \\ \\ **NGINX is currently running:** This displays the service status. Clicking [Stop Now] immediately stops the service. **NGINX is currently stopped:** This displays the service status. Clicking [Start Now] immediately stops the service. **Enable Server on Start:** Enabling this causes the nginx service to load at boot time during each boot. **Enable PHP support:** Enabling this option will cause any PHP pages served by the webserver to be interpreted. **Run As:** The option chosen here specifies under which system account the nginx daemon will run. * root - The nginx daemon will run under the root account. * nobody - The nginx daemon will run under the nobody account. \\ {{:pasted:20220215-153311.png}}\\ \\ **Keep Config files: TBD** **Web Server Port:** This specifies on which LAN port Web content will be served. Traditionally, the default HTTP port is 80. However, a conflict might occur if the httpd web server were configured to use the same port (See: [[admin_access|Admin Access]]). Consequently, it was decided that port 85 would be the default for Nginx. **Upload file size limit:** This setting enforces a hard-coded limit for the maximum amount of data that can be uploaded in a single session. **Allow Remote Access:** Enabling this chooses whether Nginx content will be visible from the WAN. If enabled, content is served on the same port as the LAN's "Web Server Port". \\ \\ {{:pasted:20220215-153925.png}} \\ \\ \\ **Web Server Name:** Here, you enter the web server's name. (Default: Tomato). **Document Root Path:** Here, you specify the filesystem location of the root folder where content/pages are located. **Server Priority:** This set the "nice" value for the nginx process. This value assigns the Webserver process a CPU priority, relative to other processes. Valid settings are between -20 (highest priority) and 19 (lowest priority). **Enable h5ai support:** h5ai is a modern file indexer for HTTP Webervers with focus on your files. Its php code displays "boring" file/folder lists in an a more appealing way. In order to benefit from h5ai, you must: * Enable the h5ai support option * Enable PHP on this menu * Download [[https://larsjung.de/h5ai/|h5ai]] and copy the ''_h5ai'' folder directly under the ''Document Root Path'' ===== Advanced Settings ===== This field allows you to specify custom settings to tweak default behaviour. For additional information please consult the latest official NGINX [[https://nginx.org/en/|documentation]]. \\ {{:pasted:20220215-164209.png}} \\ \\ \\ {{:pasted:20220215-164428.png}}\\ \\ **Use user config file:** Here, choose whether a custom configuration file will be used. This will cause some web interface settings to to be overridden. **User config file path:** Here, you can specify a custom path for the nginx configuration file. The settings in this file will be active only if //Use user config file// is enabled. When //Use user config file// is disabled, the path remains in the field, but is inactive. \\ \\