Страница 1 из 1
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-18 14:34:07
q55434
Здравствуйте! Поднял на FreeBSD NGinx + php-fpm, все работает, кроме виртуальных хостов. По домену виртуального хоста вместо открытия нужной директории, открывает директорию для стандартного сайта.
Конфиги:
Стандартный:
Код: Выделить всё
cat /usr/local/etc/nginx/nginx.conf
user www;
worker_processes 2;
pid /var/run/nginx.pid;
error_log /var/log/nginx/nginx-error.log warn;
events {
worker_connections 1024;
use kqueue;
}
http {
include mime.types;
default_type application/octet-stream;
# log options
log_format main '$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent '
'"$http_referer" "$http_user_agent" '
'"$gzip_ratio"';
# nginx options
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
server_tokens off;
# fastcgi
fastcgi_intercept_errors on;
# virtual hosting
include /usr/local/etc/nginx/vhosts/*;
# virtual server
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/nginx-access.log main;
# server root directory
location / {
root /usr/local/www/apache22/data/;
index index.php index.html index.htm;
}
location ~* /(var|lib|application)/.*$ {
return 403;
}
location ~* \.ini$ {
return 403;
}
location ~ \.php$ {
fastcgi_pass unix:/tmp/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/www/apache22/data/$fastcgi_script_name;
include fastcgi_params;
}
}
}
И для виртуального хоста :
Код: Выделить всё
# virtual server
server {
listen 80;
server_name domain.com www.domain.com;
access_log /var/log/nginx/domain.com-access.log main;
# server root directory
location / {
root /usr/local/www/apache22/data/domain1;
index index.php index.html index.htm;
}
location ~* /(var|lib|application)/.*$ {
return 403;
}
location ~* \.ini$ {
return 403;
}
# php
location ~ \.php$ {
fastcgi_pass unix:/tmp/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-18 15:29:35
guest
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-18 16:11:01
q55434
еще раз перепроверил конфиг, указано все как в примере
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-18 21:46:27
guest
q55434 писал(а):
еще раз перепроверил конфиг, указано все как в примере
кроме примера, есть голова:
- понимание default для умалчиваемого сервера
- работа по hostname
- по ip-address
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-18 22:24:35
q55434
guest писал(а):q55434 писал(а):
еще раз перепроверил конфиг, указано все как в примере
кроме примера, есть голова:
- понимание default для умалчиваемого сервера
- работа по hostname
- по ip-address
согласен, из представленных конфигов можете что-то посоветовать головой?
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-19 15:28:56
guest
q55434 писал(а):guest писал(а):q55434 писал(а):
еще раз перепроверил конфиг, указано все как в примере
кроме примера, есть голова:
- понимание default для умалчиваемого сервера
- работа по hostname
- по ip-address
согласен, из представленных конфигов можете что-то посоветовать головой?
могу, но хочу чтобы Вы воспользовались своей, если намеки не дали наводку, посмотрите
в документации Apache про технологию виртуальных хостов:
- name-based (hostname)
- ip-based
всегда будет default сервер и если у Вас конфигурация для виртуальных хостов неверна,
всегда будете попадать на default.
- name-based (hostname) - зависит от настроек DNS, куча RR=A с одним ip для разных hostname
- ip-based только от ip (virtualhost per ip)
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-19 15:33:46
q55434
guest писал(а):q55434 писал(а):guest писал(а):q55434 писал(а):
еще раз перепроверил конфиг, указано все как в примере
кроме примера, есть голова:
- понимание default для умалчиваемого сервера
- работа по hostname
- по ip-address
согласен, из представленных конфигов можете что-то посоветовать головой?
могу, но хочу чтобы Вы воспользовались своей, если намеки не дали наводку, посмотрите
в документации Apache про технологию виртуальных хостов:
- name-based (hostname)
- ip-based
всегда будет default сервер и если у Вас конфигурация для виртуальных хостов неверна,
всегда будете попадать на default.
- name-based (hostname) - зависит от настроек DNS, куча RR=A с одним ip для разных hostname
- ip-based только от ip (virtualhost per ip)
Благодарю за совет, но, как видите, своей пока не очень получается. Был бы рад, если бы на конкретном примере (моем случае) Вы смогли бы мне помочь справится с данной проблемой. Заранее благодарю!
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-19 18:32:39
guest
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-19 18:33:53
q55434
эти запросы я уже вводил ранее, потому и написал конфиг. есть что-то посоветовать по существу?
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-19 19:40:09
guest
q55434 писал(а):
эти запросы я уже вводил ранее, потому и написал конфиг. есть что-то посоветовать по существу?
все советы даны, даже расшифрованы, осталось мало-мало включить думалку, удачи
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-19 19:57:21
q55434
guest писал(а):q55434 писал(а):
эти запросы я уже вводил ранее, потому и написал конфиг. есть что-то посоветовать по существу?
все советы даны, даже расшифрованы, осталось мало-мало включить думалку, удачи
будет возможность предоставить что-то помимо ссылок, которые я смотрел до обращения на форум и посоветовать что-то конкретное без общих слов - буду этому рад
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-20 0:57:47
guest
q55434 писал(а):guest писал(а):q55434 писал(а):
эти запросы я уже вводил ранее, потому и написал конфиг. есть что-то посоветовать по существу?
все советы даны, даже расшифрованы, осталось мало-мало включить думалку, удачи
будет возможность предоставить что-то помимо ссылок, которые я смотрел до обращения на форум и посоветовать что-то конкретное без общих слов - буду этому рад
не хотите думать - платите деньги, оплачиваете - объясняю.
если не знаете как работает DNS и как настраивать зоны, оплачиваете - объясняю.
и тд.
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2016-01-24 19:54:18
Amadeus
Вы прежде чем агриться на форумчан, распишите словами по пунктам что делают указанные вами конфиги?
Я вижу, то что - это копи паст, и вы не понимайте как оно работает.
Можно прям тут
1)
2)
3)
4)
тут вопрос не в том, что вас как то пытаются задеть, эта задачка решается за 5 минут, я могу сюда скопипастить пару вещей с рабочих вебов, у меня их на nginx штук 50 только, а смысл? Что бы через мес прилетел еще 1 такой вопрос?)
Не работают виртуальные хосты в nginx freebsd
Добавлено: 2022-05-31 16:14:27
Василий
[cоde]
server {
listen 80;
server_name example.org
www.example.org;
...
}
server {
listen 80;
server_name example.net
www.example.net;
...
}
...
[/cоde]
Когда Энджинкс обрабатывает конфиг, он смотрит на входящий запрос, что в нем есть и сравнивает с тем что в конфиге. Если он не находит совпадений то кидает за дефолтный сервер я так понимаю если он явно не указан, как так "listen 80 default_server;". То это первый в списке, как он выбирает, если в /site-available/... несколько файлов виртуальных хостов мне не ведома(вероятно по алфавиту). Поэтому надо везде правильно прописывать секцию server_name ...;. У меня настроено так чтобы все запросы от http переадресовывались на https. И в https секции не был прописан server_name ...; в итоге сервер кидал все запросы на дефолтный виртуальный хост. Надеюсь это кому то поможет.