Vesta Control Panel - Forum

Community Forum

Skip to content

Advanced search
  • Quick links
    • Main site
    • Github repo
    • Google Search
  • FAQ
  • Login
  • Register
  • Board index Language specific forums Russian (Русский) Веб сервер
  • Search

Пользовательский nginx.conf для нескольких сайтов на аккаунте. Как?

Вопросы по работе Веб сервера
Apache + Nginx, Nginx + PHP5-FPM
Post Reply
  • Print view
Advanced search
5 posts • Page 1 of 1
Agat
Posts: 22
Joined: Sat Feb 20, 2016 6:44 am

Пользовательский nginx.conf для нескольких сайтов на аккаунте. Как?
  • Quote

Post by Agat » Fri Apr 15, 2016 10:55 am

Конфигурация сервера. nginx+php-fpm
Обычно создаю для каждого сайта своего пользователя. И даже не задумывался о проблеме. Имею шаблон для пользовательского конфига nginx, который работает отлично. (нужна обработка ЧПУ в вордпресс)

Code: Select all

server {
    listen      xxx.xxx.xx.xx:80;
    server_name site.name www.site.name;
    root        /home/user/web/site.name/public_html;
    index       index.php index.html index.htm;
    access_log  /var/log/nginx/domains/site.name.log combined;
    access_log  /var/log/nginx/domains/site.name.bytes bytes;
    error_log   /var/log/nginx/domains/site.name.error.log error;

        gzip on; # включаем сжатие gzip
        gzip_disable "msie6";
        gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript;

        location / {

if ($host ~* ^site\.name$) {
    rewrite ^(.*) http://www.site.name$1 permanent;
    break;
}


location / {
    index index.php index.html index.htm;
    try_files $uri $uri/ /index.php?$args;
}

        location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ {
            expires     max;
        }

        location ~ [^/]\.php(/|$) {
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            if (!-f $document_root$fastcgi_script_name) {
                return  404;
            }

            fastcgi_pass    127.0.0.1:9002;
            fastcgi_index   index.php;
            include         /etc/nginx/fastcgi_params;
        }
    }

    error_page  403 /error/404.html;
    error_page  404 /error/404.html;
    error_page  500 502 503 504 /error/50x.html;
}

А как оформить настройки для нескольких сайтов на юзере? Никак не соображу. У нас ведь разные server_name, root и пишутся эти настройки не под директорию с сайтом, а под директорию юзера. Подскажите.
Top

skurudo
VestaCP Team
Posts: 8099
Joined: Fri Dec 26, 2014 2:23 pm
Contact:
Contact skurudo
Website Facebook Google+ Skype
Twitter

Re: Пользовательский nginx.conf для нескольких сайтов на аккаунте. Как?
  • Quote

Post by skurudo » Fri Apr 15, 2016 12:01 pm

Не очень понятный вопрос.
На данный момент у пользователя один nginx.conf и в нем информация по доменам.
Конфигурация допускает наличие разных блоков server в одном конфиге, также как и с виртуальными хостами.

В дальнейшем мы думаем на тем, чтобы у каждого домена был свой конфиг.
Как мне кажется, это будет намного интереснее.
Top

Agat
Posts: 22
Joined: Sat Feb 20, 2016 6:44 am

Re: Пользовательский nginx.conf для нескольких сайтов на аккаунте. Как?
  • Quote

Post by Agat » Fri Apr 15, 2016 12:44 pm

skurudo wrote:Не очень понятный вопрос.
Конфигурация допускает наличие разных блоков server в одном конфиге, также как и с виртуальными хостами.

В дальнейшем мы думаем на тем, чтобы у каждого домена был свой конфиг.
Как мне кажется, это будет намного интереснее.
Это ответ на мой непонятный вопрос. Спасибо. Я Этого не знал. Поэтому и вопрос непонятный. :)
Top

skurudo
VestaCP Team
Posts: 8099
Joined: Fri Dec 26, 2014 2:23 pm
Contact:
Contact skurudo
Website Facebook Google+ Skype
Twitter

Re: Пользовательский nginx.conf для нескольких сайтов на аккаунте. Как?
  • Quote

Post by skurudo » Fri Apr 15, 2016 1:46 pm

Agat wrote:Это ответ на мой непонятный вопрос. Спасибо. Я Этого не знал. Поэтому и вопрос непонятный. :)
А ну ок :)

Вот она такая конструкция:

Code: Select all

server {
    listen      *:443 ssl spdy;
    server_name zeira.ru www.zeira.ru;
...
    include /home/admin/conf/web/snginx.zeira.ru.conf*;
}
server {
    listen      *:443 ssl spdy;
    server_name erza.ru www.erza.ru;
....
    include /home/admin/conf/web/snginx.erza.ru.conf*;
}
Top

Agat
Posts: 22
Joined: Sat Feb 20, 2016 6:44 am

Re: Пользовательский nginx.conf для нескольких сайтов на аккаунте. Как?
  • Quote

Post by Agat » Fri Apr 15, 2016 6:11 pm

skurudo wrote:
Agat wrote:Это ответ на мой непонятный вопрос. Спасибо. Я Этого не знал. Поэтому и вопрос непонятный. :)
А ну ок :)

Вот она такая конструкция:

Code: Select all

server {
    listen      *:443 ssl spdy;
    server_name zeira.ru www.zeira.ru;
...
    include /home/admin/conf/web/snginx.zeira.ru.conf*;
}
server {
    listen      *:443 ssl spdy;
    server_name erza.ru www.erza.ru;
....
    include /home/admin/conf/web/snginx.erza.ru.conf*;
}
упс. nginx ругается.
Я продублировал полностью свой блок, который описал в первом посте и вписал туда данные по своему второму сайту. То есть сейчас в пользоватетельском конфиге два идентичных блока, различающихся только данными по сайту и путями (site.name и site.ru)

Code: Select all

nginx -t
nginx: [warn] conflicting server name "site.ru" on    *:80, ignored
nginx: [warn] conflicting server name "www.site.ru" on    *:80, ignored
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Я чего то неправильно понял?
/home/admin/conf/web/snginx.erza.ru.conf*; и по этому пути у меня конфигураций никаких, кроме админской (nginx.conf) нет
Top


Post Reply
  • Print view

5 posts • Page 1 of 1

Return to “Веб сервер”



  • Board index
  • All times are UTC
  • Delete all board cookies
  • The team
Powered by phpBB® Forum Software © phpBB Limited
*Original Author: Brad Veryard
*Updated to 3.2 by MannixMD
 

 

Login  •  Register

I forgot my password