Chef : invalid number of arguments in “server_name” directive in

Edit /etc/chef-server/chef-server.rb and add these lines (create the file if it doesn’t exist): server_name = “THE PUBLIC IP OF YOUR INSTANCE” api_fqdn server_name nginx[‘url’] = “https://#{server_name}” nginx[‘server_name’] = server_name lb[‘fqdn’] = server_name bookshelf[‘vip’] = server_name After: chef-server-ctl reconfigure

Балансування навантаження з допомогою Nginx

Переклад статті Use Nginx for Proxy Services and Software Load Balancing

Серед додаткових особливостей nginx є можливість використання його як проксі (front end proxy) для передачі запитів на інші веб-сервери, Nginx також може виступати в якості Front end інтерфейсу для кластеру з серверів і навіть для балансування навантаження (load balancer).

Розглянемо наступні витримки конфігурації, які описують кластер appcluster:

Уривок файлу : nginx.conf

http {
  # [...]

  upstream appcluster {
     server lollipop.ducklington.net:8801;
     server lollipop.ducklington.net:8802;
     server lollipop.ducklington.net:8803;
     server lollipop.ducklington.net:8804;
     server simons.ducklington.net:8801;
     server simons.ducklington.net:8802;
     server simons.ducklington.net:8803;
     server simons.ducklington.net:8804;
     }

  # [...]

  server {
    listen 21.43.56.87:80;
    server_name ducklington.org www.ducklington.org;

    location / {
       proxy_pass  http://appcluster;
       }
    }

    # [...]
  }

У цьому прикладі ми описали просте балансування по принципу round-robin за допомогою директиви upstream.

Всередині цього блоку ми описали вісім серверів, кожен з яких працює на різних хостах і портах.
Конфігурація блоку upstream повинна бути разташована на початку блоку http конфігураційного файлу nginx.conf.

Сервери, що працюють на портах з 8801 по 8804 на хостах lollipop.ducklington.net і simons.ducklington.net отримають одинакову кількість запитів направлених в блок appcluster.

В блоці server Nginx налаштований для прослуховування запитів на певну IP-адресу і порт (наприклад, 21.43.56.87 і 80), і відповідати на запити до доменів ducklington.org і www.ducklington.org.

Усі запити про виділення ресурсів у цьому домені (наприклад, /) будуть передані у http://appcluster, який описаний в директиві upstream.

Читати далі

Правила Rewrite для поддержки ЧПУ на серверах под управлением Nginx для DLE

После перехода на с Apache на связку Nginx+spawn-cgi у меня некоректно запустились сайті на DLE. Причем проблемы была именно в ссылках ЧПУ. Обычные ссылки newsid=xxx прекласно работали. Решение проблемы В конфиге Nginx вместо : # if (!-e $request_filename) { # rewrite ^(.+)$ /index.php?q=$1 last; Вставляем такой код: rewrite ^/page/(.*)$ /index.php?cstart=$1 last; rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)/page,([0-9]+),([0-9]+),(.*).html(/?)+$ /index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6 last; … Читати далі

rewrite правила Gallery2 на Nginx

location /v/ { if ($request_uri !~ /main.php) { rewrite ^/v/(.*)$ /main.php?g2_view=core.ShowItem&g2_path=$1 last; } } location /d/ { if ($request_uri !~ /main.php) { rewrite /d/(\d+)-(\d+)/([^/?]+)/main.php?g2_view=core.DownloadItem&g2_itemId=$1&g2_serialNumber=$2&g2_fileName=$3 last; } }

nginx, php-cgi или избавляемся от apache

Теста ради решил несколько доменов поднять только на nginx и посмотреть как поменяется картинка на графиках загрузки сервера.
Как запустить nginx поверх apache было описано тут
Теперь начинаем прикручивать php к nginx через fastcgi.
для этого нам понадобится пакет spawn-fcgi

Читати далі

nginx и Apache2

Решил немного разгрузить веб-сервер, для чего в виде Frontend’a прикрутил Nginx.
Субьективно: скорость отображения страниц выросла.
Итак, приступим…
Допустим у вас уже есть веб-сервер с Apache и виртуальными хостами
Начинаем ставить софт

emerge www-apache/mod_rpaf
USE="status realip addition" emerge -av nginx

Читати далі