// A method for installing LightTPD, PHP, MySQL on FreeBSD
// All source is stored in /usr/local/src
// Source tarballs are in /usr/local/src/tarballs
// nginx web server install on FreeBSD 6.2
// Links:
// http://wiki.codemongers.com/Nginx
// http://blog.kovyrin.net/category/web-tech/nginx/
// http://blog.kovyrin.net/2006/05/30/nginx-php-fastcgi-howto/
// http://blog.kovyrin.net/files/nginx-conf/php-fcgi.nginx.conf
// http://sysoev.ru/nginx/download.html
su
cd /usr/local/src/tarballs
fetch http://sysoev.ru/nginx/nginx-0.5.20.tar.gz
cd ..
tar zxvf tarballs/nginx-0.5.20.tar.gz
cd tarballs/nginx-0.5.20
less README
The English documentation is available at http://nginx.net
PREFIX: Let -prefix= default to /usr/local/nginx
--with-cc-opt="-I /usr/local/include"
./configure --help
# Make directory for log files (my preferences!)
mkdir /var/log/nginx
mkdir /var/log/nginx/drupal
chmod -R 777 /var/log/nginx
mkdir /usr/local/etc/nginx
chown www /usr/local/etc/nginx
chmod 775 /usr/local/etc/nginx
./configure \
--sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/etc/nginx/nginx.conf \
--pid-path=/var/run/nginx.pid
--with-cc-opt="-I /usr/local/include/pcre"
Configuration summary
+ threads are not used
+ using system PCRE library
+ OpenSSL library is not used
+ md5 library is not used
+ sha1 library is not used
+ using system zlib library
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/nginx"
nginx configuration file: "/usr/local/etc/nginx/nginx.conf"
nginx pid file: "/var/run/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "/usr/local/nginx/client_body_temp"
nginx http proxy temporary files: "/usr/local/nginx/proxy_temp"
nginx http fastcgi temporary files: "/usr/local/nginx/fastcgi_temp"
make
make install
cd /usr/local/nginx
total 1492
drwxr-xr-x 2 root wheel 512 May 16 15:56 html
drwxr-xr-x 2 root wheel 512 May 16 15:56 logs
-rwxr-xr-x 1 root wheel 1495320 May 16 15:56 nginx
v4
total 28
-rw-r--r-- 1 root wheel 2837 May 16 15:56 koi-utf
-rw-r--r-- 1 root wheel 2223 May 16 15:56 koi-win
-rw-r--r-- 1 root wheel 2944 May 16 15:56 mime.types
-rw-r--r-- 1 root wheel 2944 May 16 15:56 mime.types.default
-rw-r--r-- 1 root wheel 2702 May 16 15:40 nginx.conf
-rw-r--r-- 1 root wheel 2702 May 16 15:56 nginx.conf.default
-rw-r--r-- 1 root wheel 3610 May 16 15:56 win-utf
user www;
worker_processes 1;
error_log /var/log/nginx/error.log debug;
pid /var/log/nginx/nginx.pid;
events {
worker_connections 1024;
}
http {
include /usr/local/etc/nginx/mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name domain.com alias1.domain.com alias2.domain.com;
access_log /var/log/nginx/drupal/access.log;
location / {
index index.php;
root /var/www/drupal;
}
location ~ \.php$ {
include /usr/local/etc/nginx/fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
}
}
}
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_FILENAME /var/www/drupal$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
/usr/local/nginx/nginx -t -c /usr/local/etc/nginx/nginx.conf
2007/05/16 16:10:37 [info] 6369
2007/05/16 16:10:37 [info] 6369
/usr/local/bin/spawn-fcgi -f /usr/local/bin/php -a 127.0.0.1 -p 9000 -u www
// output: spawn-fcgi.c.190: child spawned successfully: PID: 6414
/usr/local/nginx/nginx -c /usr/local/etc/nginx/nginx.conf
ps ax | grep nginx
// output:
// 6425 ?? Ss 0:00.00 nginx: master process /usr/local/nginx/nginx -c /usr/local/etc/nginx/nginx.conf (nginx)
// 6426 ?? S 0:00.00 nginx: worker process (nginx)
kill -15 6425
/usr/local/nginx/nginx -c /usr/local/etc/nginx/nginx.conf
ps ax | grep nginx
// output:
// 6447 ?? Ss 0:00.00 nginx: master process /usr/local/nginx/nginx -c /usr/local/etc/nginx/nginx.conf (nginx)
// 6448 ?? S 0:00.00 nginx: worker process (nginx)
kill -HUP 6447