Настройка виртуальных хостов на Nginx

Автор kak2z, 08 июня 2015, 08:55:28

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

kak2z

В общем с самого начала
что имеем
Цитироватьroot[at]kaktus:/etc/nginx/sites-enabled# cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04

и nginx
Цитировать
nginx version: nginx/1.4.6 (Ubuntu)
built by gcc 4.8.2 (Ubuntu 4.8.2-19ubuntu1)
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_spdy_module --with-http_sub_module --with-http_xslt_module --with-mail --with-mail_ssl_module
Апача нет, зато есть php5-fpm.

настраиваю два виртуальных хоста по инструкции http://devacademy.ru/posts/nginx-ubuntu-1404/ сравнивал с другими инструкциями, вроде там так же...
оба хоста работают... но при запуске nginx получаю вот такую ошибку.

Цитироватьroot[at]kaktus:/etc/nginx/sites-enabled# sudo service nginx restart
* Restarting nginx nginx                                                                                                                                        [ OK ]

root[at]kaktus:/etc/nginx/sites-enabled# nginx
nginx: [warn] conflicting server name "merphi.ru" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "www.merphi.ru" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "merphi.ru" on [::]:80, ignored
nginx: [warn] conflicting server name "www.merphi.ru" on [::]:80, ignored
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

на 80 порту вроде никто кроме него не висит
Цитировать
root[at]kaktus:/etc/nginx/sites-enabled# netstat -tnlp | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      2834/nginx
tcp6       0      0 :::80                   :::*                    LISTEN      2834/nginx
помогите кто чем сможет)) уже второй день не дойду до настройки phpMyAdmin потому что не хочу оставлять эту ошибку так))

один хост настроен вот так вот

server {
<------>listen 80 default_server;
<------>listen [::]:80 ipv6only=on default_server;

<------>root /var/www/chepuxi.net/html;
<------>index index.html index.htm;

<------>access_log /var/www/chepuxi.net/log/default_access.log;
<------>error_log /var/www/chepuxi.net/log/default_error.log;

<------># Make site accessible from http://localhost/
<------>server_name chepuxi.net www.chepuxi.net;

<------>location / {
<------><------>try_files $uri $uri/ =404;
<------>}
}


второй вот так вот

server {
<------>listen 80;
<------>listen [::]:80;

<------>charset utf-8;

<------>root /var/www/merphi.ru/html;
<------>index index.html index.htm index.php;

<------>server_name merphi.ru www.merphi.ru;

<------>location ~ \.php$ {
#<-----><------>fastcgi_pass 127.0.0.1:9000;
<------><------>fastcgi_pass unix:/var/run/php5-fpm.sock;
<------><------>fastcgi_index index.php;
<------><------>fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
<------>}

<------>access_log /var/www/merphi.ru/log/default_access.log;
<------>error_log /var/www/merphi.ru/log/default_error.log;

<------># Make site accessible from http://localhost/
<------>server_name merphi.ru www.merphi.ru;

<------>location / {
<------><------>try_files $uri $uri/ =404;
<------>}
}
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Mavn

а зачем во второй конфиге указываешь два раза server_name??
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

kak2z

Цитата: Mavn от 08 июня 2015, 10:56:16
а зачем во второй конфиге указываешь два раза server_name??
о!! точно!! помогло)) спасибо большое))
а я роюсь ищу причины.. а она на поверхности.
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Mavn

не знаю я бы наверное все же директиву
server_name указывал бы в начале ...
и привел бы файл к такому виду

server {
server_name merphi.ru www.merphi.ru;
listen 80;
listen [::]:80;

charset utf-8;
root /var/www/merphi.ru/html;
index index.html index.htm index.php;

access_log /var/www/merphi.ru/log/default_access.log;
error_log /var/www/merphi.ru/log/default_error.log;
 
location ~ \.php$ {
#fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
}
location / {
try_files $uri $uri/ =404;
}
}
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

kak2z

#4
Цитата: Mavn от 08 июня 2015, 14:48:30
не знаю я бы наверное все же директиву
Спасибо большое.. приведу к такому виду...
у меня возник вопрос.. проблема в том что не могу даже запрос гуглу сформулировать что бы нашло... вот так отдает сервер почему то:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="http://127.0.0.1/smf/Themes/default/css/index.css?fin20" />
<script type="text/javascript" src="http://127.0.0.1/smf/Themes/default/scripts/script.js?fin20"></script>
<script type="text/javascript" src="http://127.0.0.1/smf/Themes/default/scripts/theme.js?fin20"></script>
<script type="text/javascript"><!-- // --><![CDATA[
var smf_theme_url = "http://127.0.0.1/smf/Themes/default";
var smf_default_theme_url = "http://127.0.0.1/smf/Themes/default";
var smf_images_url = "http://127.0.0.1/smf/Themes/default/images";
var smf_scripturl = "http://merphi.ru/index.php?PHPSESSID=ms1kqb0tu6tumpnj6ri0mo8m35&amp;";
var smf_iso_case_folding = false;
var smf_charset = "UTF-8";
var ajax_notification_text = "Loading...";
var ajax_notification_cancel_text = "Cancel";
// ]]></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="description" content="Login" />
<title>Login</title>
<meta name="robots" content="noindex" />
<link rel="help" href="http://merphi.ru/index.php?PHPSESSID=ms1kqb0tu6tumpnj6ri0mo8m35&amp;action=help" />
<link rel="search" href="http://merphi.ru/index.php?PHPSESSID=ms1kqb0tu6tumpnj6ri0mo8m35&amp;action=search" />
<link rel="contents" href="http://merphi.ru/index.php?PHPSESSID=ms1kqb0tu6tumpnj6ri0mo8m35&amp;" />
<link rel="alternate" type="application/rss+xml" title="My Community - RSS" href="http://merphi.ru/index.php?PHPSESSID=ms1kqb0tu6tumpnj6ri0mo8m35&amp;type=rss;action=.xml" />
<script type="text/javascript">

обратите внимание что кое где стоит правильный домен http://merphi.ru/
а кое где какой то бред в виде http://127.0.0.1/smf/

в файле движка settings все в порядке...  я так понимаю я где то намудрил с Nginx'ом?


UPD1
добрался до раздела Themes админке форума.. вот так как раз и стоит путь http://127.0.0.1/smf
меняю на "http://merphi.ru сохраняю - опять возвращается это http://127.0.0.1/smf

UPD2
исправил пути прямо в базе.. странно это

UPD3
теперь форум не хочет принимать логин и пароль для ftp доступа.. не могу установить русский язык..
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Yarik

После обновления и рестарта nginx получил такое
nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored
Покурил интернет,в итоге идём в etc/nginx/nginx.conf и проверяем не подключен ли ненужный include вида:
include       /etc/nginx/conf.d/*.conf;
Удаляем,сохраняем и делаем рестарт nginx.

digger®

Цитата: Yarik от 11 июня 2015, 00:09:11
После обновления и рестарта nginx получил такое
nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored
Покурил интернет,в итоге идём в etc/nginx/nginx.conf и проверяем не подключен ли ненужный include вида:
include       /etc/nginx/conf.d/*.conf;
Удаляем,сохраняем и делаем рестарт nginx.
Вообще-то, это механизм подключения виртуальных хостов, конфиги которых лежат conf.d/. Правильное решение - разобраться что там конфликтует, а не все зарубить. Там, наверняка, какой-нибудь default конфиг висит.

Yarik

#7
Цитата: digger® от 11 июня 2015, 00:30:04
Вообще-то, это механизм подключения виртуальных хостов, конфиги которых лежат conf.d/. Правильное решение - разобраться что там конфликтует, а не все зарубить. Там, наверняка, какой-нибудь default конфиг висит.
Вернул строку на место,удалил дефолтный конфиг.