Нашел небольшой баз или неправильную работу функции rtrim(), не проверял остальные (ltrim, trim)().
Проблема вот в чем если сайт устанавливать не в корень домена, а в папку.
К примеру /var/www/domain.local/folder/ то в настройках в переменной root будет прописано /folder/.
Так вот проблема в том что при правой замене функция будет искать в пути /var/www/domain.local/folder директорию /folder/, а ее нет.
И тогда он заменит rtrim('/var/www/domain.local/folder', '/folder/') и на выходе получим /var/www/domain.loca.
*trim работает правильно - перечислены символы для удаления. Применена функция в данном контексте неправильно. Но я правил эту проблему, наверное в этом месте упустил.
Используемая версия InstantCMS: ВЕРСИЯ
Версия PHP: 7.4 8.0 8.1 8.1 Версия MySQL/MariaDB: 11
Как воспроизвести проблему:
/system/core/config.php
Нашел небольшой баз или неправильную работу функции![image](https://github.com/instantsoft/icms2/assets/16735162/98ea4a8e-1025-40af-9296-3cbe3e18f897)
rtrim()
, не проверял остальные (ltrim, trim)(). Проблема вот в чем если сайт устанавливать не в корень домена, а в папку. К примеру/var/www/domain.local/folder/
то в настройках в переменной root будет прописано/folder/
. Так вот проблема в том что при правой замене функция будет искать в пути/var/www/domain.local/folder
директорию/folder/
, а ее нет. И тогда он заменитrtrim('/var/www/domain.local/folder', '/folder/')
и на выходе получим/var/www/domain.loca
.