Laravel делает маршрутизацию в подпапку при развертывании


Laravel делает маршрутизацию в подпапку при развертывании

26.10.2020 05:41:46 Просмотров 47 Источник

У меня есть приложения Laravel и общий хостинг. Я хотел развернуть свои приложения Laravel в cpanel и получил ошибку

404 resources not found при развертывании. Я вложил в общую папку фреймворк Laravel в корневую папку, а файл в папке фреймворк Laravel /laravelApp.

Итак, мой хостинг структурирован следующим образом :

bdd.services
|--> public_html
|----> myLaravelApp
|------> css
|------> js
|------> laravelApp
|--------> app
|--------> /* and all the laravel apps inside here */
|------> .htaccess
|------> index.php
|
|
|----> someonesProject

Когда я попытался протестировать приложение, я вижу, что запрос был запросом на то, чтобы

https://mydoamin.com/login/auth, где он должен быть https://mydoamin.com/myLaravelApp/login/auth. И он показывает ошибку 404 resources not found.

Так как же сделать так, чтобы маршрут всегда шел к https://mydoamin.com/myLaravelApp/? или, может быть, есть другое решение?

вот мой .откройте файл. htaccess

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Send Requests To Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Я также установил APP_URL на .env.

/laravelApp0

У вопроса есть решение - Посмотреть?

Ответы - Laravel делает маршрутизацию в подпапку при развертывании / Laravel make routing to subfolder on deploy

Является ответом!
Devin Gray

26.10.2020 07:33:53

В этом случае вы должны убедиться, что у вас есть

APP_URL="http://example.com/folder"

В вашем файле .env

Тогда вместо того чтобы делать href вот так

href="/login"

Дайте вашему маршруту имя

Route::get('login', ...)->name('login');

и сделать ваш рот такой

href="{{ route('login') }}"

Таким образом, он всегда будет использовать полный url-адрес

Помочь в развитии проекта:
Закрыть X