Любые обсуждения по этой теме. Само-пиар или резюме публиковать на другие наши проекты, например host.camp или vm.center. Тут только клиентские запросы на помощь.
  • Дата создания
    17 марта 2019
  • Топиков
    908
  • Ограничение на постинг
    0.000
  • Категория:
    Администрирование и настройка

Помогите с mod_rewrite и хостингом

Добрый день друзья.

Помогите кто чем может разобраться с хостером. Клиент предоставил хостинг, некий Alkar.net где судя по хелпам ничего не менялось с десять лет, еще успешно используют CGI и так далее.

Когда я начал заливать сайт, в котором есть .htaccess с некоторыми правилами все стало колом 500 ошибки, но я такое встречаю время от времени особенно на хостингах Франции и Бельгии, но стоит найти и закоментить некоторое правило или добавить какое то новое которое они рекомендуют и все работает. Но стал я пытаться отыскать в чем проблема в этот раз наткнулся на то что никогда не мешало.

Само правило очень простое:
RewriteRule ^(?!admin/|css/|images/|inc/|js/|m/|pma/)(.+)$ index.php [L,QSA]

То есть все что не начинается на admin/|css/|images/|inc/|js/|m/|pma — передается на index.php. Это правило работало уже 4 года и я его никогда нигде не трогал и трогать тут нечего, работает оно и на моем тестовом хостинге, но у этого провайдера все выпадает в 500. Ему не нравится "?!" то есть отрицание того что идет далее.

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

Спасибо за ваши советы и время.

Как победить Error: accept EMFILE?

Проблема в следующем:
Стоит node 0.8.14, запущен скрипт, использующий sockjs

Сервер перезапустили, и теперь постоянно сыпется в лог скрипта следующее:
events.js:71 throw arguments[1]; // Unhandled 'error' event ^ Error: accept EMFILE at errnoException (net.js:769:11) at TCP.onconnection (net.js:1017:24)

После перезагрузки я проставил
ulimit -u 1048576 ulimit -n 1048576

Эти значения были до перезагрузки

Вот вывод ulimit -a на данный момент
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 509680 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1048576 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) 1048576 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Система CentOS 6 x64
Гуглил, пока не нашел решения

Не уходит почта с Ubuntu 12.04 Exim4, куда копать?

У меня проблема — помогите, пожалуйста.
Есть vps-сервер Ubuntu 12.04, на нем хостятся несколько сайтиков. Сайтики на wordpress. Раньше почта для них ходила при помощи msmtp, для него был прописан Google Apps Mail аккаунт с аутентификацией и т.п.

Появилась необходимость отправлять почту с каждого сайтика отдельно, от каждого отдельного адреса. Для этого был снесен msmtp и установлен Exim4 только для отправки писем. При этом происходят чудеса — из командной строки письма уходят — при помощи
echo «This is a test.» | mail -s Testing mail@example.com
а вот при помощи
/usr/sbin/sendmail -t -i Test > Test > EOT
почта фризится и в логах Exim пишется: unroutable address, соответственно, почта не уходит.
Подскажите, пожалуйста, куда копать?

Какой правильный iptables позволит не зацикливаться при выходе через проброшенный порт?

Лежит на сервере-хосте горка KVM-гостей, гости ломятся через 80-й порт наружу, что бы получить апдейты пакетов rpm/yum..., вытянуться curl и т.д. Но все эти запросы запиливаются к локальному http­-серверу по ряду причин в iptables хост-машины:
iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.10.10.110:80
Это выглядит как-то так:

+----------------------------+ | Debian KVM-Host | iptables -t nat -I PREROUTING -p tcp \ | eth0: 5.5.5.5 | --dport 80 -j DNAT --to-destination 10.10.10.110:80 | vmbr1: 10.10.10.1 | +--------+-------------------+ | +--------+------------+ | nginx 10.10.10.110 | +---------------------+ | | | | | | +---------------------+ | | +----| Guest1 10.10.10.123 | | | +---------------------+ | | +---------------------+ | +---| Guest1 10.10.10.122 | | +---------------------+ | +---------------------+ +---| Guest1 10.10.10.121 | +---------------------+

Допустим, дергаю я wget yandex.ru с Guest3 10.10.10.123, а у меня в nginx-прокси на 10.10.10.110 все запросы незнакомые перенаправляются на Guest2 10.10.10.122, а на нем — Plesk, и вот мне этот самый плеск сообщает, что страница по умолчанию для этого сервера… и отдает мне её. Да и сам 10.10.10.110 все попытки выйти из сети, согласно правилу хост-машины, через себя пропускает и на 10.10.10.122 взад шлет. Сами интернет-адреса правильно ресолвятся (другие порты), но кого это интересует.

Так вот, как «разлупить» мне эту ситуацию — не вразумею. Помогите, пожалуйсталюдидобрые, с таким правилом, что бы все внешние адреса !10.10.10.0/24 слались через NAT и во вне хост-машины.

nginx+php-fpm+freebsd логи

Всем привет.
После недели мучений я сдаюсь. :)
Мне нужна помощь в настройке связки nginx+php-fpm+freebsd
Конкретнее, у меня проблема с логами ошибок. Они, тупо, не пишутся.
вводные данные таковы.
freebsd 8.3-RELEASE
PHP 5.4.7 (fpm-fcgi)
nginx version: nginx/1.2.4

конфиг FPM
[global] pid = run/php-fpm.pid error_log = log/php-fpm.log log_level = notice emergency_restart_threshold = 5 emergency_restart_interval = 2 process_control_timeout = 2 daemonize = yes events.mechanism = kqueue [puser] listen = /usr/local/www/host/tmp/php-fpm.sock; listen.backlog = -1 listen.allowed_clients = 127.0.0.1 listen.owner = puser listen.group = puser listen.mode = 0666 user = puser group = puser pm = dynamic pm.max_children = 30 pm.start_servers = 2 pm.min_spare_servers = 2 pm.max_spare_servers = 5 pm.max_requests = 50 slowlog = /usr/local/www/host/logs/fpm.log.slow request_slowlog_timeout = 1s rlimit_files = 1024 rlimit_core = 0 chroot = /usr/local/www/host/ catch_workers_output = yes env[HOSTNAME] = $HOSTNAME env[TMP] = /tmp env[TMPDIR] = /tmp env[TEMP] = /tmp php_admin_value[upload_tmp_dir] = /tmp php_admin_value[cgi.fix_pathinfo] = 0 php_admin_value[date.timezone]= 'Europe/Moscow' php_admin_value[memory_limit] = 320m php_admin_value[max_execution_time] = 180
Читать дальше

Как правильно перенести symfony 2 проект на рабочий сервер?

Вопрос в следующем, создал проект локально. Стал перемещать на хостинг, кладу все папки проекта (включая web) в public_html, в итоге получаю, что сайт работает через www.my-domain.ru/web/app.php/. А хочется www.my-domain.ru. Так же можно app.php не писать, эффект будет аналогичен, при этом при переходе по ссылкам в пределах сайта уже app.php не нужно вписывать. Локально попробовал web переименовать в public_html — взлетело. Заливаю по другому весь проект, все папки за исключением web кладу рядом с public_html на хостинге, все что было в web кидаю в public_html. www.my-domain.ru/app.php/ — работает, убираю app.php — не работает, не найден индексный файл. Делаю хитрее в .htaccess вписываю строку DirectoryIndex app.php — отлично, главная страница открывается по адресу www.my-domain.ru, но все остальные ссылки не работают, все работает если руками перед ними вписывать app.php. Собственно я так понимаю symfony при правильно работе неявно подставляет app.php, но в такой расположении папок не работает. Вопрос к знатокам, как исправить? Может я зря папки положил на одном уровне с public_html, а надо было по другому как то замапить web? Разговор идет о shared хостинге, но есть ssh консоль.

Пропажа данных и проблемы с сетью в Windows Server 2008 R2

Обнаруживаются большие проблемы с Windows Server 2008 R2. Сразу скажу — я в деле разбираюсь не очень, а кому-то разбираться нужно. Пригласить кого-то со стороны — возможности нет (глушь).

У нас стоит «сервер» (более-менее мощный компьютер, серверным оборудованием внутри и не пахнет), на котором крутится ОС (см. выше), на которой крутится сервер терминалов, в котором пользователи работают с 1С (файловой) и еще парой программ. Так же вертится SQL Server 2005 Express. Пользователей всего — не более 30. У всех (наверное) — статически прописаны IP, шлюз и DNS-сервера провайдера. Все это лежит за ADSL-модемом D-Link 2540U, на котораом проброшены порты на наш дорогой сервер — для работы снаружи.

Итак, сначала пропали ярлыки в главном меню, затем пропали часть данных на диске — это еще ладно, восстановил. Дальше — больше. Начались проблемы с сетью: после перезагрузки (до моего прихода стоял Hyper-V — неясно зачем, решил его убрать. Теперь понял, что если что-то работает, то лучше ничего не трогать) сеть перестала видеть комп по символьному имени, по IP он нормально пинговался. Но! При попытке «пингануть» кого-то с сервер, пинг выдавал, то «Общую ошибку», то «General failure», включая пинги на 127.0.0.1. Удалил роль «Маршрутизация и удаленный доступ» — сам себя он увидел, но в остальном ничего не поменялось. Что ж, поставил на карту автоопределение сетевых параметров — пинги стали доходить и уходит, сервер появился в сети. Все бы хорошо, но IP динамический, а установить статику модем не позволял из-за кривой прошивки — просто не сохраняет значения и все тут (обновлю, как найду настройки провайдера). Вернул на статику в сетевой, какими-то манипуляциями добился от пинга «Заданная сеть недоступна». Сбрасывал Arp-ы, кешы, роуты — все так же. Вернул на динамический, обновил пользователям RDP-файлы, поменял проброс портов на модеме. Вот сегодня IP сменился — и по новой… Что делать — ума не приложу. И после перезагрузки — снова пропажа файлов, на этот раз ярлыками и инсталляторами дело не обошлось, потерлись базы 1С, стал грешить на жесткий — оказалось, что это аппаратный Raid 1. Помимо него присутствуют WDC WD20EARS-00MVWB0 и WDC WD10EALX-009BA0 — подозреваю, в raid входят подобные.
Про то, что не устанавливаются обновления — я уже молчу (unknown error code 800070005).
Читать дальше

Не проходят соединения SSL/TLS из PHP?

Сервер — VDS (Debian 6.0)

Версия PHP 5.3.16-1~dotdeb.0

Проблема:

Все попытки отправить письмо из PHP скриптов, посредством smtp.gmail.com через SSL/TLS соединение заканчиваются ошибкой.

Порты не закрыты, т.к. я могу подключиться и отправить письмо посредством openssl

PHP работает с подключенным модулем openssl

Из phpinfo:

SSL Version OpenSSL/0.9.8o

и

OpenSSL support enabled
Читать дальше

Как живет ProFTPd за NAT-ом на панели Plesk?

То, что раньше было FTP сервером 175.149.11.09 в панеле Plesk
теперь стало сервером с адресом 10.10.11.3 с проброшенным наружу портом.

MasqueradeAddress 175.149.11.09
Может это? ProFTPd этого не понять: указать в конфигах
не разрешает политика панели (до первого рестарта)

При сохранении текущих настроек и с таким правилом:
iptables -t nat -I PREROUTING -p tcp --dport 721 -j DNAT --to-destination 10.10.11.3:21
ProFTPd материться таким затейливым образом:
proftpd[12905] 127.0.0.1: fatal: Socket operation on non-socket

Как разрулить адрес, не дожидаясь обновления 8.8.8.8?

Ситуация следующая: меняем IP хостинг.площадки на Hetzner. NS — остаются те же, меняется только A-запись.
Мгновения и nameserver Hetzner отвечает правильно, но TTL обещает, что по старому адресу будут заходить еще
TTL-часов, пока не разнесется весть по интернету и не истечет тот самый TTL.

Как мне на локальной машине (WinXP) настоять на своем «разруливании» адреса?
Нужен «карманный» DNS или есть что-то типа public hetzner dns, а может какой hosts-файл?