.htaccess перенаправляет в Laravel и в Forge - PullRequest
0 голосов
/ 05 декабря 2018

При переносе старого проекта в новый проект, основанный на Laravel, нам нужно перенаправить (301 заголовок) старые маршруты на новые маршруты, например,

/index.php?page=shop ==> /shop
/index.php?category=abc&product_id=123 ==> /abc/item-123

Для этого мы подготовили правильноеФайл .htaccess, который отлично работает на старом проекте.Однако, когда мы развертываем новый проект и меняем домен DNS, htaccess также должен находиться в новой папке.

В Laravel у нас есть /public/.htaccess, однако добавление наших частей .htaccess выигралоне работаю вместе с Laravel ForgeЭто простой файл .htaccess, который выглядит следующим образом:

<IfModule mod_rewrite.c>
# Enable Rewrite Engine
RewriteEngine On
RewriteBase /

# index.php?page=user&sub_page=settings
RewriteCond %{QUERY_STRING} ^page=user&sub_page=settings$
RewriteRule ^index\.php$  /users/notifications/permissions/edit [R=301,NC,L,QSD]

(... and so on)
</IfModule>

Так что теперь мы задаемся вопросом: как мы можем заставить его работать, что он будет перенаправлять старые маршруты на новые маршруты в том же проекте на основе Laravel

1 Ответ

0 голосов
/ 05 декабря 2018

Laravel Forge использует файл nginx.conf (который вы можете настроить в forge) вместо файла .htaccess.

Вы можете использовать ссылку nginx для воссоздания ваших настроек: https://nginx.org/en/docs/. Вы должны посмотреть разделы: местоположение и перенаправление.

Надеюсь, это поможет!

...