504 Gateway Timeout - значит, что клиентский запрос nginx передал апачу, а апач не смог в установленный лимит времени вернуть HTTP-ответ.

В одном веб-скрипте столкнулся с тем, что после отправки формы скрипт падал и выдавал ошибку 502 до тех пор, пока не удаляю куки домена.

Затем все повторяется снова...

В логах ошибок при этом появляется запись об ошибке:

... Upstream sent too big header while reading response header from upstream ...

Помогло следующее решение:

После установки ssl сертификата на ISPmanager 5 случилась фигня со входом с phpMyAdmin.
При переходе из Доп. Возможностей все переходит нормально:

https://site.ru:1500/mancgi/dbadmin?elim=my_db->MySQL&plid=

Далее происходит редирект на форму логина и пароля со ссылкой:

https://site.ru:80/phpmyadmin/index.php?token=f38dd1e5a16de8e336095ca04c1a8024

Если убрать :80 то все будет в порядке и вы успешно авторизуетесь, иначе авторизация не произойдет.

Как решить данную проблему?

В текущих версиях панели VestaCP нет выбора версий PHP как в CPanel, ISPmanager 5 и т.п., поэтому попробуем сделать это сами.

Устанавливать будем на Debian 8 + VestaCP

Из репозитория автоматом установится PHP 5.6, поэтому наша задача установить дополнительно:

Все действия производятся под root’ом.

Для начала установим необходимые пакеты:

apt-get build-dep -y php5
apt-get install libonig-dev libmcrypt-dev libreadline-dev

Очистка CRL и OCSP кеша

Windows

По умолчанию, Windows кэширует списки отозванных сертификатов (CRL) и сертификаты CA для быстрой проверки цепочек сертификатов. Недостатком такого поведения является то, что клиент не запрашивает более новый CRL пока срок локального кэша CRL не истечет. Для удаления OCSP и/или кэш CRL из вашей системы с Windows:

Меню ПУСК > Выполнить
Введите cmd и нажмите Enter

Введите следующую команду и нажмите клавишу Enter, чтобы выполнить:

Это делается через RewriteMap, но это не лучший вариант по нагрузке, т.к. проверяется каждый запрос. Лучший вариант - это прописать canonical URL.

Однажды может возникнуть необходимость подделать временные меткикакого-либо файла.

Чтобы получить информацию о текущий временных метках файла воспользуетесь командой stat :

Иногда Вы не хотите сохранять историю в Bash, так как команды могут содержать такие чувствительные данный, как например пароли.

Эта статья поможет держать историю Bash под контролем.

Иногда возникает ситуация, когда на основном домене один сайт, на поддомене другой сайт. При этом нужно обезопасить их друг от друга, что бы в случае взлома одного из них не появилась возможность войти на другой.

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

При редактировании файлов встроенный редактор обычно не хочет отображать содержимое файла и выдает ошибку:
Конвертация в 'UTF-8' не поддерживается на стороне сервера

Чтобы не выбирать каждый раз из списка кодировку UTF-8 нужно сделать следующее:

В файл /usr/local/ispmgr/etc/ispmgr.conf дописать

FSEncoding UTF-8

После этого, редактор по-умолчанию станет открывать все файлы в кодировке UTF-8