Посоветуйте хорошую и подробную инструкцию по установке и настройке Bind9 (для локальной сети) и Nginx. Учитывая, что будет только один сервер.
Посоветуйте инструкцию по установке и настройке Bind и Nginx
Nigelist, для nginx две аж написал, первая в готовых решениях, последняя:
Установка LNMP - nginx, mysql, php-fpm - Gentoo, Debian, Ubuntu, CentOS
zenon, а статьи по установке Bind9 для одного сервера в локальной сети нет на примете?
С переводом проблем нет, но по данному конфигу у меня не получается. Если можете мне помочь с несколькими вопросами, то можно и перевести.Nigelist, Переведи и можно будет разместить тут, или у меня. ;_)
Где вопросы-то?
zenon, ну вообще все вопросы связаны с тем, что сервер у меня в сети один, нету дублирующего сервера. А все остальные сервисы (Web-сервер, DNS-сервер, SQL-сервер, сервер приложений) находятся на первом и единственном сервере. Итак, в конструкции:
[console]@ IN SOA ns1.linuxconfig.org. admin.linuxconfig.org. (
1 ; Serial
3h ; Refresh after 3 hours
1h ; Retry after 1 hour
1w ; Expire after 1 week
1h ) ; Negative caching TTL of 1 day[/console]
В другой статье нашел значение этих параметров:
- Refresh - период времени с которым вторичный сервер днс обращается к основному.
- Retry - период с которым вторичный сервер будет повторять попытки при неудачном обновлении.
- Expire - максимальное время использования данных на вторичном сервере, после которого делается обязательное обновление.
Но как быть, если у меня один DNS-сервер? Или может быть значение параметров указаны неправильно?
P.S. И обязательно ли указывать имя ns1. Или можно указать hostname сервера?
P.P.S. Так же непонятно как быть с роутером? Ведь DHCP-сервер на роутере. Надо ли настраивать статический IP на сервере? Если уже на роутере зарезервирован IP-адрес для сервера?
Nigelist, уже не первый день тут... телепат из меня сегодня никакой.
Начни с постановки задачи.
zenon, хочу поднять DNS-сервер, чтоб по домашней сети к нему можно было обращаться по доменному имени (например: server.domain.loc). Для себя хочу сделать сайт со модулем статьи (как у вас) с форумом. тоже пока локальный.
Так же хотелось бы разобраться, как расшаривать базу 1С:Предприятие на Nginx. На Apache это делается командой:
[console]./webinst -apache22 -wsdir db1 -dir '/var/www/db1' -connStr 'Srvr="1cserver";Ref="db1";' -confPath /etc/apache2/httpd.conf[/console]
Где webinst - скрипт публикации баз из состава утилит 1С, db1 - имя БД к которой настраиваем доступ, 1cserver - имя сервера на котором установлен 1С сервер.
В дальнейшем хочу попробовать поднять почтовик и ftp-сервер.
Добавлено:
У вас в статье указано:
Владельцем каталога сайтов должен быть пользователь, от которого запущен и работает вэб-сервер. В Debian и Ubuntu это www-data, в Gentoo, CentOS - пользователь nginx. В конфигурации за это отвечает директива user (nginx.conf):
[console]user www-data;
worker_processes 4;
...
...[/console]
А у меня в Debian 7:
[console]user nginx;
worker_processes 1;[/console]
И непонятно то ли задавать владельцем папки пользователя nginx, то ли заменить nginx на www-data в nginx.conf.
А у меня в Debian 7:
Консоль
user nginx;
worker_processes 1;
Откуда nginx был установлен? Если из dotdeb то будет пользователь nginx, если стандартно, то www-data.
Вообще без разницы, главное знать от кого работает, чтобы у сервера был доступ к содержимому.
хочу поднять DNS-сервер, чтоб по домашней сети к нему можно было обращаться по доменному имени (например: server.domain.loc). Для себя хочу сделать сайт со модулем статьи (как у вас) с форумом. тоже пока локальный.
ИМХО, BIND для этого избыточен, я обошёлся dnsmasq.
Из репозитория nginx. Того, что в вашей статье.Откуда nginx был установлен? Если из dotdeb то будет пользователь nginx, если стандартно, то www-data.
Вообще без разницы, главное знать от кого работает, чтобы у сервера был доступ к содержимому.
А так наверное все таки работает от nginx:
[console]ps aux | grep nginx
root 2055 0.0 0.0 30904 980 ? Ss 20:49 0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx 2056 0.0 0.0 31252 1628 ? S 20:49 0:00 nginx: worker process
nigelist 3208 0.0 0.0 7852 836 pts/0 S+ 21:24 0:00 grep nginx[/console]
На вырост.ИМХО, BIND для этого избыточен, я обошёлся dnsmasq.
Из репозитория nginx. Того, что в вашей статье.
Ну а я про что говорю - мейнтейнеры Debian правят конфиги и если ставишь из родных реп, то пользователь будет www-data - это стандарт для Debian/Ubuntu.
zenon, что то я не пойму, разве репозитории с nginx.org относятся к родным? Или вы имели в виду стандартные репозитории Debian?
P.S. В репозиториях nginx версии 1.4.2, а в стандартных репозиториях версии 1.2.1. Эта разница важна? Может стоит поставить версию из стандартного репозитория.
Спасибо, по этой статье получилось.Nigelist, Переведи и можно будет разместить тут, или у меня. ;_)
Кстати, это ничего, что DNS-сервер получает IP-адрес от роутера (правда ему зарезервирован постоянный IP-адрес) или лучше назначить статический IP-адрес? Добавил в роутер DNS-сервер для домашней локалки. Вроде всё работает.
Кстати, это ничего, что DNS-сервер получает IP-адрес от роутера
В локальных сетях мне больше нравится кэшируюший dns сервер Unbound.
Локальные адреса в нём прописывать просто, например:
local-zone: "home.lan." static
local-data: "www.home.lan. 300 IN A 192.168.0.1"
local-data: "ftp.home.lan. 300 IN A 192.168.0.2"
zenon, получаю затык на:
* Связку nginx и php-fpm настраиваем на работу через unix сокетДальнейшие шаги выполнил в точности. Страница вообще не отображается. А в server_name должен стоять localhost или что-то другое?
Создадим новую конфигурацию для localhost:
[console]# nano /etc/nginx/conf.d/localhost.conf
server {
server_name localhost;
# listen 192.168.0.120:80;
listen 127.0.0.1:80;
root /var/www/localhost;
index index.php;
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
# fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}[/console]
А в server_name должен стоять localhost или что-то другое?
Смотри офф доку server_name
zenon, сделал так:
server {
server_name domain.loc
www.domain.loc
192.168.1.33
;
listen 80;
#listen 127.0.0.1:80;
root /var/www/localhost;
index index.php;
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
# fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
Открывается пустая страница.