Я создал веб-приложение с помощью CodeIgniter 4 и переместил его в другой домен, а также на другой сервер. После того, как я настроил базу данных, я пошел ее протестировать, и она всегда перенаправляет меня обратно в старый домен.
Я проверил, что возвращает функция site_url(), и она возвращает старый веб-сайт. Затем я провел обширный поиск всех файлов в моем проекте, чтобы найти, где у меня может быть жестко закодированный старый домен, но ничего не вышло.
как я могу это исправить и где еще я могу изменить базовый URL?
Вероятно, это не важно, но приложение раньше находилось в поддомене, а теперь оно находится в основном домене (test.old-domain.com вместо домена.com).
~строка 19 файла app/Config/App.php, см. также baseurl()
@Vickel, если вы имеете в виду свойство baseURL в файле app/Config/App.php, то это мой новый домен. Но site_url() по-прежнему возвращает старый домен, и я не могу понять, где установлено это свойство и как его изменить..
@Vickel, да, он был в файле .env, и поиск по какой-то причине не смог его найти. В любом случае, это решило мою проблему, большое спасибо за ваши усилия!






Если ваш новый сайт CodeIgniter 4 перенаправляется на старый домен, вам необходимо проверить в основном 3 файла:
project-root/app/Config/App.php: проверьте настройку baseUrl():
около строки 19, установлен новый домен: public $baseURL = 'https://myNewDomaindotcom';:
Примечание
Начиная с версии 4.3.0, если вы установите Config\App::$allowedHostnames, это вернет URL-адрес с установленным в нем именем хоста, если текущий URL-адрес совпадает.
project-root/public/.htaccess: проверьте, есть ли у вас RewriteRule перенаправление на старый домен
project-root/.env: примерно в строке 25 вы можете включить: app.baseURL = 'мойНовыйДомендотком'
подробнее о Начальная настройка
относительно комментария ОП:
да, он был в файле .env, и поиск не смог его найти некоторое время. причина
в зависимости от вашей любимой IDE вам может потребоваться связать файлы .env с вашей IDE, чтобы выполнять поиск по содержимому файла .env (или просто выполнить поиск вручную).
Вы говорите, что site_url возвращает неправильный URL-адрес, поэтому просто посмотрите на его код и выясните, откуда он его берет.