Настраиваем связку nginx frontend (отдача статики) + apache22 (+php52) backend на FreeBSD

Цель:
— Установить связку nginx frontend (отдача статики) + apache22 (+php52) backend (обработка php)
— Вернуть в логи apache реальный ip-адрес запроса, а не ip-адрес nginx.
1) Устанавливаем nginx

cd /usr/ports/www/nginx
/usr/ports/www/nginx/make install clean

Появится окно выбора нужных опций. Я убираю использование протокола Ipv6 и нажимаю Ок:

2) Устанавливаем apache22 и php52 если они не установлены.
Детальная установка описана в статье — Установка веб-сервера apache22+php52

Далее:
Во всех, используемых у Вас, конфигах apache и виртуалхостов, меняем порт прослушивания c 80 на 88:

httpd.conf:

cat /usr/local/etc/apache22/httpd.conf | grep 88
Listen 88
ServerName www.soulbrat.org.ua:88

httpd-vhosts.conf:

cat /usr/local/etc/apache22/extra/httpd-vhosts.conf | grep 88
NameVirtualHost *:88

soulbrat.org.ua.conf:

cat /usr/local/etc/apache22/Includes/soulbrat.org.ua.conf | grep 88

3) Ставим mod_rpaf для решения проблемы определения рального IP для apache

cd /usr/ports/www/mod_rpaf2
/usr/ports/www/mod_rpaf2/make install clean

После установки идем в:

ee /usr/local/etc/apache22/httpd.conf

находим строку:

#LoadModule rpaf_module       libexec/apache22/mod_rpaf2.so

и раскоментируем её.

LoadModule rpaf_module       libexec/apache22/mod_rpaf2.so

Если, при перезапуске апача у Вас возникает ошибка «Can’t locate API module structure `rpaf2_module’ in file /usr/local/libexec/apache22/mod_rpaf2.so»
Проверте, что бы название модуля rpaf_module — было без цифры «2″ . Этот баг исправили в новой версии модуля.

В конце файла httpd.conf, добавляем следующие строки:

# Включаем модуль
RPAFenable On
# Доводит до ума X-Host
RPAFsethostname On
# Адрес фронтенда (nginx) - реальный IP-адрес вашго сервера
RPAFproxy_ips 195.8.40.80 127.0.0.1
# Имя отправляемого заголовка
RPAFheader X-Forwarded-For

сохраняем httpd.conf и закрываем.

4) Сохраняем с другим именем созданный конфиг nginx.conf и создаем свой:

mv /usr/local/etc/nginx/nginx.conf /usr/local/etc/nginx/nginx.conf.default

создаем свой конфиг:

ee /usr/local/etc/nginx/nginx.conf

# пользователь и группа от которого запускается процесс
user  www www;

# 3 рабочих процесса
# рекомендуют делать по количеству ядер
# но время отклика реально уменьшяется если запутить побольше воркеров
# ps ax -o %cpu,vsz,wchan,command | grep "nginx\|PID"
# Если один из рабочих процессов находится в состоянии ожидания "kqread" в колонке
# "WCHAN", то значит их количество достаточно. Ну а если уж все они
# постоянно находятся в этом состоянии, то их количество можно сократить до одного...
# И не забывайте контролировать логи ошибок nginx, если количество соединений
# превысит значение, которое в может обслужить nginx текущим количеством
# процессов, то в логах это будет соответствующее сообщение.
worker_processes  8;

# Уменьшает число системных вызовов gettimeofday(), что приводит к увеличению
# производительности
timer_resolution 100ms;

# Изменяет ограничение на число используемых файлов RLIMIT_NOFILE для рабочего
# процесса.
worker_rlimit_nofile 8192;

# Директива задаёт приоритет рабочих процессов от -20 до 20 (отрицательное число
# означает более высокий приоритет)..
worker_priority -5;

# Лог для ошибок, делаем отдельный каталог
error_log  /usr/logs/nginx-error.log;
events {

    # максимум рабочих соединений
    worker_connections  2048;
    # Метод обработки соединений
    # kqueue  эффективный метод, используемый во FreeBSD
        use kqueue;
        }
http {
    # Лог доступа всего веб-сервера
    access_log  /usr/logs/nginx-access.log;
    open_log_file_cache off;

    gzip  on;
    # Минимальная длина ответа, при которой модуль будет жать, в байтах
    gzip_min_length  1024;
    # Разрешить сжатие для всех проксированных запросов
    gzip_proxied     any;
    # MIME-типы которые необходимо жать
    gzip_types       text/plain application/xml application/x-javascript text/javascript text/css text/json;
    # Запрещает сжатие ответа методом gzip для IE6
    gzip_disable     "msie6";
    # Уровень gzip-компрессии
    gzip_comp_level  6;
    # Подключаем таблицу mime
    include       mime.types;
    # mime-тип по умолчанию
    default_type  application/octet-stream;

    ###Защита от срыва стека###
    #
    # Задаёт максимально допустимый размер тела запроса клиента,
    # указываемый в поле Content-Length. заголовка запроса. Если размер больше
    # заданного, то клиенту возвращается ошибка 413 (Request Entity Too Large).
    # Следует иметь в виду, что браузеры не умеют корректно показывать эту ошибку.
    # Установка параметра размер в 0 отключает проверку размера тела
    # запроса клиента.
    # Если сервер должен поддерживать загрузку файлов, это значение
    # необходимо увеличить
    client_max_body_size       1m;
    #
    # Максимальный размер буфера для хранения тела запроса клиента
    client_body_buffer_size    1k;
    #
    # Директива задаёт размер буфера для чтения заголовка запроса клиента
    client_header_buffer_size    1k;
    #
    # Директива задаёт максимальное число и размер буферов для чтения большого
    # заголовка запроса клиента
    large_client_header_buffers  2 1k;
    ############################

    ### Повышение производительности
    # Директива задаёт таймаут при чтении тела запроса клиента
    client_body_timeout    3m;
    # Директива задаёт таймаут при чтении заголовка запроса клиента
    client_header_timeout  3m;
    # Директива задаёт таймаут при передаче ответа клиенту
    send_timeout           1m;

    # Директива задаёт таймаут, в течение которого keep-alive соединение с клиентом
    # не будет закрыто со стороны сервера
    keepalive_timeout      2m;

    # Включить sendfile(). Использование sendfile() экономит системные вызовы,
    # уменьшает число копирований данных,
    # позволяет использовать меньше физической памяти
    # Директива разрешает или запрещает использовать sendfile()
    sendfile        on;

    # Директива разрешает или запрещает использовать опции
    # TCP_NOPUSH во FreeBSD
    #keepalive_timeout
    #tcp_nopush     on;

    ### http://nginx.org/ru/docs/hash.html
    # Задаёт размер корзины в хэш-таблицах имён серверов.
    # Значение по умолчанию зависит от размера строки кэша процессора
    # Эта директива необходима если у вас большое колличество виртуалхостов
    server_names_hash_bucket_size 128;
    # Задаёт максимальный размер хэш-таблиц имён серверов
    server_names_hash_max_size 512;

    # Это заставит nginx скрывать информацию о типе и версии Web-сервера на
    # страницах, генерируемых в ответ на ошибочный запрос клиента
    #server_tokens off;

    # Модуль позволяет описывать группы серверов, которые могут использоваться
    # в директивах proxy_pass и fastcgi_pass
    upstream backend {
        # Директива задаёт имя и параметры сервера Обратите внимание, мы будем
        # использовать имя "backend" в директиве proxy_pass
        server 127.0.0.1:88;
                     }

## где будут лежать виртуалхосты
include /usr/local/etc/nginx/Includes/*;
}

Создаем необходимые каталоги:

mkdir /usr/local/etc/nginx/Includes
mkdir /usr/logs

Добавляем nginx в автозапуск:

echo 'nginx_enable="YES"' >> /etc/rc.conf

Теперь необходимо создать нужные виртуалхосты, все которые прописаны в apache. Создадим один, по этому примеру создаются и остальные:

touch /usr/local/etc/nginx/Includes/soulbrat.org.ua.conf
ee /usr/local/etc/nginx/Includes/soulbrat.org.ua.conf

server {
        # Слушать 80 порт
        # фильтр позволяет отфильтровывать.
        # все не хттп соеденения до их установки на уровне ядра.
        # (собираются все пакеты анализируется GET загаловок,.
        # если его нет соеденение отбрасывается, если есть то соедененине.
        # появляется в системе и нгинксе, оч полезно от примитивного доса).
        listen       80 default accept_filter=httpready;
        # Следует учитывать, что фильры необходимо запустить только на одном виртуалхосте, иначе при запуске вы получите ошибку:
        # nginx: [emerg] duplicate listen options for 0.0.0.0:80
        # На всех остальных вируталхостах, я прописываю так:
        # listen       80;

        server_name  soulbrat.org.ua www.soulbrat.org.ua  ;
        location / {
        proxy_pass         http://127.0.0.1:88/;
        proxy_redirect     off;

                        proxy_set_header Host $host;
                        proxy_set_header X-Real-IP $remote_addr;
                        proxy_set_header X-Forwarded-For $remote_addr;

                        client_max_body_size       10m;
                        client_body_buffer_size    128k;

                         proxy_connect_timeout      90;
                         proxy_send_timeout         90;
                         proxy_read_timeout         90;

                         proxy_buffer_size          4k;
                         proxy_buffers              4 32k;
                         proxy_busy_buffers_size    64k;
                         proxy_temp_file_write_size 64k;
                                        }
        # Где лежат статические файлы и собственно сам сайт
        location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$ {
        root  /usr/www/soulbrat.org.ua/WWW/;
        }
        # Статистика апача
        location ^~ /server-status/ {
        proxy_pass http://127.0.0.1:88;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                }
        # Статистика нгинкс
        location = /stat {
        stub_status on;
        access_log  off;
        allow 10.0.0.0/24;
        deny all;
                }
        location ~ /\.ht {     # закрываем доступ к файлам .htpasswd
        deny        all;
            }
}

Если вы прописали использование фильтров default accept_filter=httpready
необходимо включить их в ядро командами:

kldload accf_http
kldload accf_data

Проверяем:

[root@soulbrat /usr/local/etc/rc.d]# kldstat | grep accf
 5    1 0xc5510000 2000     accf_http.ko
 6    1 0xc5512000 2000     accf_data.ko

Что бы модули грузили автоматически, при перезагрузке системы, пропишите запуск в файл loader.conf:

ee /boot/loader.conf

accf_http_load=YES
accf_data_load=YES

Теперь все готово к запуску.

Перезагружаем apache и запускаем nginx:

/usr/local/etc/rc.d./apache22 restart && ./nginx start

Performing sanity check on apache22 configuration:
Syntax OK
Stopping apache22.
Waiting for PIDS: 72827.
Performing sanity check on apache22 configuration:
Syntax OK
Starting apache22.
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Starting nginx.

Если все запустилось без ошибок,значит все найстроки прописаны верно. Можете проверяь работу вашего сайта на новой связке nginx (frontend) + apache (backend)

=================
Несколько советов по работе с алиасами nginx:
=================
Конструкция алиаса:

location ^~ /phpmyadmin/ {
         proxy_pass http://127.0.0.1:88;
                }

просто отдаст запрос апачу на алиас phpmyadmin, используя адрес локалхоста. Если вам необходимо передавать в заголовке имя, передаваемое к проксируемому серверу, пропишите так:

location ^~ /phpmyadmin/ {
        proxy_pass http://127.0.0.1:88;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                }

Еще пример, если для сбора статистики вы используете awstats, конструкция выглядит так:

location ^~ /awstatsicons {
            alias /usr/www/soulbrat.org.ua/awstats/icons/;
            access_log off;
                    }
location ^~ /awstatscss {
            alias /usr/www/soulbrat.org.ua/awstats/css/;
            access_log off;
                    }
location ^~ /awstatsclasses {
            alias /usr/www/soulbrat.org.ua/awstats/classes/;
            access_log off;
                    }

По материалам: soulbrat.org.ua/?p=971

Рубрика: *CentOS, *Unix,*Linux, *Web, FreeBSD | Оставить комментарий

FreeBSD: настройка и конфигурирование NGINX + Apache

Настройка выполняется на:

# uname -v
FreeBSD 9.1-PRERELEASE

Apache:

# httpd -v
Server version: Apache/2.2.24 (FreeBSD)
Server built: Apr 8 2013 10:01:39

Предполагается, что Apache уже установлен и настроен по статье FreeBSD: Apache + mpm_worker + PHP + mod_fcgid или FreeBSD: Apache+MySQL+PHP (LAMP) + phpMyAdmin.

Установим NGINX:

# cd /usr/ports/www/nginx && make config-recursive

Описание опций:
[ ] DEBUG Режим отладки. Полезно на стадии тестирования и отладки конфигурации
[ ] IPV6 Поддержка протокола IP 6-й версии
[ ] GOOGLE_PERFTOOLS Включить поддержку google-perftools
[X] HTTP_MODULE Включение функций HTTP сервера
[ ] HTTP_ACCESSKEY_MODULE Модуль для генерации защищенных ссылок
[ ] HTTP_ADDITION_MODULE Фильтр, добавляющий текст до и после ответа
[ ] HTTP_DAV_MODULE Модуль для поддержки WebDAV методов PUT, DELETE, MKCOL, COPY и MOVE
[ ] HTTP_EVAL_MODULE Разбирает ответ проксируемого сервера или memcached сервера на переменные
[ ] HTTP_FANCYINDEX_MODULE Модуль позволяющий строить листинг файлов с добавлением стилей
[ ] HTTP_FLV_MODULE Модуль для стриминга флэш-видео в формате flv
[ ] HTTP_GZIP_STATIC_MODULE Модуль для отдачи клиенту предварительно сжатого файла с тем-же именем но с расширением «.gz».
[ ] HTTP_MOGILEFS_MODULE Поддержка файловой системы mogilefs.
[ ] HTTP_PERL_MODULE Встроенный Perl.
[ ] HTTP_RANDOM_INDEX_MODULE Модуль, выдает в качестве индексного файла, случайный файл из каталога.
[ ] HTTP_REALIP_MODULE Модуль для замены адреса клиента в заголовке.
[ ] HTTP_RESPONSE_MODULE Модуль для отдачи произвольного текста, прописанного в директивы модуля.
[X] HTTP_REWRITE_MODULE Модуль для изменения URI с помощью регулярных выражений, выдачи редиректов и выбора конфигурации в зависимости от переменных.
[ ] HTTP_SECURE_LINK_MODULE Модуль для проверки правильности запрошенной ссылки.
[ ] HTTP_SSL_MODULE Модуль поддержки SSL.
[X] HTTP_STATUS_MODULE Модуль, показывающий информационную страницу о текущем статусе Nginx.
[ ] HTTP_SUB_MODULE Модуль для замены в ответе, одной строки, на другую.
[ ] HTTP_UPLOAD_MODULE Модуль для аплоадов multipart/form-data.
[ ] HTTP_UPLOAD_PROGRESS В силу особенностей реализации nginx, без данного модуля не получится организовать показ статуса загрузки файлов.
[ ] HTTP_UPSTREAM_FAIR Модуль для балансировки нагрузки. Отправляет входящие запросы на наименее загруженный бакэнд.
[ ] HTTP_UPSTREAM_KEEPALIVE Поддержка keepalive- соединений с бакэндами, в том числе memcached.
[ ] HTTP_XSLT_MODULE XSLT фильтр.
[ ] HTTP_ZIP_MODULE Модуль для создания zip архивов «на лету».
[ ] MAIL_MODULE Модуль для работы nGinx в качестве почтового прокси сервера.
[ ] MAIL_IMAP_MODULE Модуль IMAP4 прокси.
[ ] MAIL_POP3_MODULE Модуль POP3 прокси.
[ ] MAIL_SMTP_MODULE Модуль SMTP прокси.
[ ] MAIL_SSL_MODULE Модуль для поддержки SSL/TLS для POP3/IMAP/SMTP.
[ ] PASSENGER_MODULE Аналог апачевского mod_rails ( Phusion Passenge ).
[X] WWW Стандартный набор HTML файлов для проверки.

Оставляем всё по-умолчанию, жмём Enter.

Устанавливаем:

# make BATCH=yes install clean

Редактируем файл конфигурации сервера Apache — /usr/local/etc/apache22/httpd.conf. В нём меняем такие параметры:

Listen 127.0.0.1:8080

и

NameVirtualHost 127.0.0.1:8080

Т.е. теперь Apache будет слушать только локальный адрес 127.0.0.1 и только порт 8080.

Теоретически (точнее — раньше, на другом сервере, так и было) можно назначить и тот же порт 80, на котором будет работать сам NGINX. Но на практике — это может привести к сложностям во время настройки. Кроме того, удобнее отслеживать источник проблем, в случае их возникновения, когда оба сервера работают на разных портах.

В случае ошибки такого вида:

[Mon Apr 08 12:55:17 2013] [warn] NameVirtualHost 127.0.0.1:80 has no VirtualHosts

Проверьте конфигурацию VirtualHost-ов, например — в файле /usr/local/etc/apache22/extra/httpd-vhosts.conf — для виртуалхостов так же необходимо установить адрес 127.0.0.1:8080.

Проверяем верность конфиграционных файлов Apache:

# apachectl configtest
Syntax OK

Если всё ОК — то перезагружаем его:

# apachectl restart

Переходим к настройке NGINX.

Главный конфигурационный файл находится в каталоге /usr/local/etc/nginx/ — nginx.conf.

Приводим его к такому виду:

user www www;
worker_processes 1;
pid /var/run/nginx.pid;
events {
worker_connections 4096;
use kqueue;
}
http {
include mime.types;
default_type application/octet-stream;

client_header_timeout 300;
client_header_buffer_size 16k;
client_max_body_size 8m;
client_body_buffer_size 256k;
client_body_timeout 300;

proxy_read_timeout 360;

sendfile on;
tcp_nopush on;
tcp_nodelay on;

client_body_temp_path /var/nginx/client_body_temp;
proxy_temp_path /var/nginx/proxy_temp;

limit_conn_zone $binary_remote_addr zone=http:2m;

#————————————-

server {

listen 178.***.***.114:80 default accept_filter=httpready;
server_name akira;

location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;

client_body_temp_path /var/nginx/client_body_temp;
proxy_temp_path /var/nginx/proxy_temp;
}
}
#————————————-

server {
listen 178.***.***.114:8080;
server_name www.domain.co.ua domain.co.ua;
location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|js|swf|avi|mp3|flv|mpeg)$ {
root /usr/local/www/users/domain/domain.co.ua;
try_files $uri @apache;
}
location ~ /\.ht {
deny all;
}
location / {
limit_conn http 5;
proxy_pass http://127.0.0.1/;
proxy_redirect off;
proxy_set_header Connection close;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass_header Content-Type;
proxy_pass_header Content-Disposition;
proxy_pass_header Content-Length;
proxy_set_header X-Forwarded-Protocol $scheme;
}
location @apache {
limit_conn http 100;
proxy_pass http://127.0.0.1;
proxy_redirect off;
proxy_set_header Connection close;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass_header Content-Type;
proxy_pass_header Content-Disposition;
proxy_pass_header Content-Length;
proxy_set_header X-Forwarded-Protocol $scheme;
}
}
#————————————-
}

В данном примере описан только один виртуалхост — domain.co.ua. Остальные параметры можно посмотреть на оф. странице NGINX. Для каждого обслуживаемого NGINX-ом виртуалхоста необходимо добавлять свой аналогичный блок директив.

Проверяем на ошибки:

# nginx -t
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful

И перезапускаем NGINX:

# service nginx onerestart

В случае ошибки такого вида:

nginx: [alert] setsockopt(SO_ACCEPTFILTER, «httpready») for 178.***.***.114:80 failed, ignored (2: No such file or directory)

Ответ можно найти в статье NGINX: «httpready» failed, ignored: No such file or directory.

Итак — перестартуем NGINX:

# service nginx onerestart
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Stopping nginx.
Waiting for PIDS: 14539.
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Starting nginx.

Проверяем:

# ps aux | grep nginx
root 34423 0.0 0.0 27068 4476 ?? IsJ 1:18PM 0:00.00 nginx: master process /usr/local/sbin/nginx
www 34424 0.0 0.0 27068 5904 ?? IJ 1:18PM 0:00.00 nginx: worker process (nginx)
root 38826 0.0 0.0 10180 768 11 LL+J 1:20PM 0:00.00 grep nginx

И проверим какие порты прослушиваются:

# netstat -Lan | grep 80
tcp4 0/0/128 178.***.***.114.80

Последний штрих — установка модуля RPAF для Apache, который позволит ему правильно определять IP пользователей.

Устанавливаем:

# cd /usr/ports/www/mod_rpaf2 && make install clean

После установки редактируем файл /usr/local/etc/apache22/httpd.conf и в него добавляем строки:

LoadModule rpaf_module libexec/apache22/mod_rpaf2.so

И ниже:

Timeout 128
KeepAlive Off
UseCanonicalName Off
HostnameLookups Off
RPAFenable On
RPAFsethostname Off
RPAFproxy_ips 178.***.***.114
RPAFheader X-Real-IP

В строке RPAFproxy_ips указываем внешний IP сервера, на котором сейчас работает NGINX.

Проверяем:

# apachectl configtest
Syntax OK

Перезагружаем:

# apachectl restart

Проверим как работает модуль. В файле лога старые записи выглядят как:

178.***.***.114 — — [08/Apr/2013:13:47:03 +0000] «GET /index.php?=PHPE9568F34-D428-11d2-A769-00AA001ACF42 HTTP/1.0″ 200 2524 «http://domain.org.ua/» «Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0″

Т.е. вместо IP клиента — Apache получает адрес самого сервера. После добавления модуля:

194.***.***.214 — — [08/Apr/2013:14:06:24 +0000] «GET /index.php?=PHPE9568F35-D428-11d2-A769-00AA001ACF42 HTTP/1.0″ 200 2146 «http://domain.org.ua/» «Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0″

Добавляем NGINX в автозапуск — редактируем файл /etc/rc.conf:

nginx_enable=»YES»

На этом настройку можно считать завершённой.
По материалам: rtfm.co.ua/freebsd-nastrojka-i-konfigurirovanie-nginx-apache/

Рубрика: *CentOS, *Web, FreeBSD | Оставить комментарий

Ария — Страж Империи «Пeрл Харбор»

Ария — Страж Империи «Пeрл Харбор»

Рубрика: клип | Оставить комментарий

«Улучшения» (ухудшения) от мтс за июнь:


• «Безлимит в сети МТС на одни сутки» — 3,19 грн — новое обязательное условие-абонплата для следующих тарифов Предоплаты (детали 111*6 – 1 – 1):

30 числа каждого месяца (кроме февраля) будет сниматься абонплата — 3,19 грн,
и до конца суток предоставлен безлимит бесплатных минут в сети МТС;
при списании абонплаты, если суммы на основном счете недостаточно, баланс номера становится отрицательным или нулевым. При этом будут заблокированы все исходящие события (звонки, смс, пакеты минут) до восстановления положительного баланса основного счета;
отключение услуги — СМС на номер 2046 (бесплатно в сети МТС);
(услуга отключается на протяжении 24 часов с уведомлением по СМС. Уточняйте у операторов факт отключения от услуги).

• Услуга «Конференц-связь» — вводится абонплата 1,06 грн/мес (детали 111*6 – 1 – 2 – 2):
изменения касаются тарифов МТС Предоплата (кроме тарифов линейки «Супер МТС 3D Ноль», СМТС Команда, Без обязательств);
(услуга изначально подключена во всех тарифах МТС Предоплата с момента активации номера);
абонплата за базовую услугу конференц-связи (объединение двух и более вызовов в один разговор) составляет 1,06 грн/месяц;
списание происходит с 26 по 30 число календарного месяца;
для отключения/(повторного подключения) услуги необходимо отправить СМС на номер 2052 (бесплатно в сети МТС, отключение произойдет в течение 24 часов),
либо использовать для управления услугой систему «Интернет-Помощник»
(отключение услуги «Конференц-связь» не влияет на корректную работу базовой услуги Удержание/«Ожидание вызова»).

• Услуга «Моя Семья» («SIM-SIM Семья») — вводится абонплата 2,13 грн/мес (детали 111*6 – 1 – 2 – 1):
изменения не затрагивают тарифы линейки Супер МТС Команда, Два Ноля;
абонплата за каждый установленный любимый номер по услуге составляет 2,13 грн/месяц;
списание происходит в последний день месяца;
для удаления установленных номеров можно использовать номер 7770 (бесплатно в сети МТС).

• Услуга «2500 минут в сети МТС» — переносится дата снятия ежемесячного платежа услуги с 1 числа на 30 число каждого месяца.
(К примеру, плата за услугу в июле будет снята 30 июня.)

С 1 июля 2013

• Услуга «100 минут абонентам по Украине» (в тарифах Energy) — уменьшается объем до 50 мин/мес, а также повышается стоимость — 15,94 грн/месяц.

Итого — пока 5 «улучшений»!


MTSUkraine

Рубрика: * | Оставить комментарий

Романс-молитва Научите меня понимать красоту из к/ф «Мусорщик»

Автор сценария Юрий Коротков по повести Ивана Охлобыстина «Мусорщик» — http://ru.wikipedia.org/wiki/Мусорщик_(фильм)

Рубрика: клип | Оставить комментарий