Roundcube настроить переменную SMTP_USER - PullRequest
0 голосов
/ 27 апреля 2020

Я установил веб-почту Roundcube на своем сервере, но хочу немного ее настроить, но.

В файле config / defaults.in c. php есть переменная $config['smtp_user'] = '%u';

Но я бы хотел изменить это значение, основываясь на значении $_SESSION["username"];, однако сеанс не запускается в файле, а только в индексе. php файл.

Я попытался установить $config['smtp_user'] внутри индекса. Файл php, который устанавливает его нормально, но он не работает при отправке почты.

Есть ли способ изменить это значение внутри моего config/defaults.inc.php или config/config.inc.php и используйте значение из $_SESSION["username"]

1 Ответ

0 голосов
/ 09 мая 2020

Вы можете начать сеанс в режиме только для чтения, а затем получить имя пользователя. С этим решением сеанс начнется в read-only mode, а затем сразу же закроется после заполнения $_SESSION.

Добавьте это к вашему config.inc.php:

session_start(['read_and_close' => true]);
$config['smtp_user'] = $_SESSION['username'] ?? '%u';

Если вы также хотите изменить сеанс (например, чтобы заполнить только имя пользователя из сеанса для одного запроса), вы можете добавить это к своему config.inc.php вместо этого:

session_start();
$config['smtp_user'] = $_SESSION['username'] ?? '%u';
unset($_SESSION['username']);
session_write_close();
...