Nginx
Jump to navigation
Jump to search
Vademecum
Environment
# cat /etc/debian_version 6.0.4 # gcc -v gcc version 4.4.5 Debian 4.4.5-8 # uname -r 3.1.0-1-amd64
Nginx
apt-get install libssl-dev libpcre3-dev mkdir /srv/local/nginx chown nobody:nogroup /srv/local/nginx su -s /bin/bash nobody wget http://nginx.org/download/nginx-1.0.12.tar.gz tar -xzf nginx-1.0.12.tar.gz cd nginx-1.0.12 ./configure --prefix=/srv/local/nginx --with-http_ssl_module make make install exit chown www-data:www-data /srv/local/nginx/logs/
Php-cgi support
apt-get install php5-cli php5-cgi php5-odbc php5-mysql php5-pgsql php5-sqlite php5-mcrypt php-xml-parser php-mail php5-imap
Init script
Config file
Start unprivileged nginx daemon with 'su www-data -c "${PREFIX}bin/nginx"' on port 8080, see Nginx init script
worker_processes 1; events { worker_connections 512; } http { include mime.types; default_type application/octet-stream; keepalive_timeout 30; gzip on; server { listen 8080; server_name NOMEHOST.org; rewrite ^ $scheme://www.NOMEHOST.org$uri? permanent; } server { listen 8080; server_name www.NOMEHOST.org; root /srv/domain/NOMEHOST.org/www; access_log /srv/domain/NOMEHOST.org/log/access.log; error_log /srv/domain/NOMEHOST.org/log/error.log; index index.html index.php; location = /robots.txt { access_log off; log_not_found off; } location = /favicon.ico { access_log off; log_not_found off; } # this prevents hidden files (beginning with a period) from being served location ~ /\. { access_log off; log_not_found off; deny all; } location ~ ~$ { access_log off; log_not_found off; deny all; } location ~* \.(jpg|jpeg|gif|css|png|js|ico|swf)$ { access_log off; expires 1h; } location ~ \.php$ { include fastcgi_params; fastcgi_pass unix:/tmp/php-cgi.socket; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } } }