Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 143 комментария

Ян Такушевич
Ян Такушевич
Мистика какая-то.
[[+username:is=`[[loggedInUsername]]`:then=`do smth`:else=`do smth else`]]
— вот так работает, но разумеется после первого же вызова кэшируется и у всех юзеров показывает одно и то же. Во всех остальных случаях условие обрабатывается некорректно.
Василий Наумкин
Василий Наумкин
Попробуй не кэшировать плейсхолдер.
[[!+username:is=`[[!loggedInUsername]]`:then=`do smth`]]

Или наоборот, кэшировать сниппет:
[[+username:is=`[[loggedInUsername]]`:then=`do smth`]]

Еще, говорят, помогает добавлять пустой else, тоже от кэширования
[[+username:is=`[[loggedInUsername]]`:then=`do smth`:else=``]]
Василий Наумкин
Василий Наумкин
Еще раз, на примере.

У меня в /etc/hostname:
bezumkin
В /etc/hosts:
127.0.0.1	localhost
151.236.219.215	bezumkin bezumkin.ru
Видишь связь этих двух файлов через одно имя — bezumkin? Видишь, что оно связывается с реальным ip?

Если у тебя в /etc/hostname будет имя, для которого нет такой связи (и оно, конечно же не прописано ни в одном DNS), то sendmail будет долго тупить при запуске, пытаясь разрешить это имя в ip. У него это не получится, но он будет долго ждать таймаута.
Александр Наумов
Александр Наумов
Станислав, hostname у меня:
127.0.0.1       localhost
195.167.123.115   mydomain.com mydomain
Где айпишник свой и имя домена тоже свое.

Мне не понятно содержимое файла /etc/hosts, так как он у меня по умолчанию такой:
127.0.0.1       localhost
127.0.1.1       ubuntu
...
Не пойму, нужно ли мне в /etc/hosts производить изменения?

P.S. Смутило меня изменить файл надпись в скобках
(или localhost)
Я понял так, что мне нужно было бы в этом файле написать localhost, если бы этой надписи там не было. Но так как упоминание о localhost там есть, я этот файл менять не стал.

Как сейчас я понимаю, я сделал не правильно, что не изменил этот файл — это верно?
Василий Наумкин
Василий Наумкин
Айпишник у тебя, понятно, должен быть свой, как и домен.

Смысл в том, чтобы sendmail мог быстро сопоставить домен, на котором он работает, и ip. А свой домен он определяет из /etc/hostname, в которое пишется одна строка с именем сервера.

Вроде ничего не напутал.
Александр Наумов
Александр Наумов
Отличная статья, отличное видео!
Спасибо!

Я только в одном месте не могу понять.
Написано:
В /etc/hosts нужно указать внешний ip сервера для своего домена (или localhost)
В файле /etc/hosts по умолчанию уже написано localhost
127.0.0.1       localhost
127.0.1.1       ubuntu
...
то есть все равно нужно, как и в /etc/hostname привести к такому виду?
127.0.0.1       localhost
195.167.123.115   mydomain.com mydomain