В настоящее время я настраиваю почтовый сервер, используя postfix и курьера.
postfix настроен для проверки учетных записей электронной почты в базе данных MySQL. Например, когда я отправляю электронное письмо по адресу "john.doe@example.com", postfix проверяет, есть ли в базе данных "john.doe", и записывает письмо в /var/mail/vhosts/john.doe/
. Если этот maildir не существует, postfix создает его.
Курьер (сервер POP/IMAP) также настроен для аутентификации через MySQL. Когда я подключаюсь к своему серверу и аутентифицируюсь с помощью «john.doe», курьер просматривает ту же базу данных MySQL и знает, что электронные письма находятся в /var/mail/vhosts/john.doe/
.
Проблема в том, что курьер возвращает сообщение об ошибке, если каталог не существует, что происходит с каждой новой учетной записью, которая еще не получила письмо. Ошибка просто "chdir() не удалось для каталога /var/mail/vhosts/john.doe/".
Когда я хочу создать учетную запись электронной почты, я должен добавить ее в базу данных и создать соответствующий каталог. Тем не менее, я бы хотел избежать доступа к файловой системе, если это возможно.
Есть ли способ для курьера автоматически создать каталог или вернуть "нет электронной почты во входящей почте", если каталог не существует?