Установка Nginx для FreeBSD из исходников (руководство по установке)

Установка Nginx для FreeBSD из исходников

Идем на официальный сайт nginx и качаем от туда программу с исходниками:

Перейдем в папку /usr/local/src/
# wget http://nginx.org/download/nginx-1.4.2.tar.gz
Распаковываем сам архив:
# tar -xjf nginx-1.4.2.tar.gz
Перейдем в папку с nginx
# cd /usr/local/src/nginx-1.4.2
В папке должен быть файл README, нужно прочитать его чтобы понять с какими параметрами его нужно компилировать, но можно использовать и мой если Вам подходит:
./configure --with-cc-opt="-O2 -fomit-frame-pointer -I /usr/local/include/" \
--without-http_charset_module \
--without-http_userid_module \
--without-http_geo_module \
--without-http_autoindex_module \
--without-http_fastcgi_module \
--with-ld-opt="-L /usr/local/lib"

Собираем nginx выполнив команды:

# make; make install clean

Добавим в rc.conf загрузку и запустим nginx:

# echo 'nginx_enable="YES"' >> /etc/rc.conf
# /usr/local/nginx/sbin/nginx
Посмотрим запустился энжинкс (приведу 2 способа как это можно сделать):
# pgrep nginx
# ps aux | grep [n]ginx
nging_grep

Если
не стартует нужно подправить nginx.conf:
# ee /usr/local/nginx/conf/nginx.conf
Конфигурация nginx.conf:
user www-data www-data;
worker_processes 2;
 
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
sendfile on;
# Установка Nginx для FreeBSD из исходников
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 3;
tcp_nodelay off;
gzip on;
gzip_comp_level 2;
gzip_proxied any;
gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml
application/xml+rss text/javascript;
include /etc/nginx/sites-enabled/*;
}

Автозагрузка nginx:

Нужно создать скрипт в папке /usr/local/etc/rc.d
#Скрипт по теме "Установка Nginx для FreeBSD из исходников"
# nginx.sh
#! /bin/sh
### BEGIN INIT INFO
# Provides: nginx
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts the nginx web server
#Установка Nginx для FreeBSD из исходников
# Description: starts nginx using start-stop-daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/nginx/sbin/nginx
NAME=nginx
DESC=nginx
test -x $DAEMON || exit 0
# Include nginx defaults if available
if [ -f /etc/default/nginx ] ; then
. /etc/default/nginx
fi
set -e
case "$1" in
start)
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON
echo "$NAME."
;;
restart|force-reload)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON
sleep 1
start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
reload)
echo -n "Reloading $DESC configuration: "
start-stop-daemon --stop --signal HUP --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0

Ставим на папку ограничения (права):

# chmod 755 /usr/local/etc/rc.d/nginx.sh
# /usr/local/etc/rc.d/nginx.sh start

Установка Nginx для FreeBSD из исходников завершено! Если что то не понятно написано, прошу пишите мне и я Вам обязательно помогу.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.