В настоящее время я работаю над проектом Laravel 5.1, который включает в себя публичный раздел и раздел администратора. При поиске в поиске проблемы, с которой я столкнулся, я наткнулся на этот пост управление ролью пользователя войти в систему. Где первый пост рекомендует.
Администратор и пользователи в одном и том же приложении laravel — плохая идея просто потому, что приложение будет использовать одну и ту же информацию о сеансе и хранилище. Будет множество случаев egde, из-за которых информация будет проходить через любые логические «стены», которые вы установили, и в итоге вы будете тратить слишком много времени на исправление этих пробелов. Что вы действительно хотите сделать, так это настроить отдельные приложения laravel для каждого: admin.project.com & project.com. Таким образом, вы получаете два отдельных сеанса и хранилище. Все, что вам нужно сделать, это убедиться, что необходимые вам базы данных настроены в обоих файлах конфигурации database.php. Вы даже можете разместить ОБА проекты на одном сервере с отдельными развертываниями, прослушивая разные порты. ДОВЕРЯЙТЕ МНЕ, это лучший способ.
Может ли кто-нибудь подробно объяснить, как это можно сделать? Я имею в виду, как я должен настроить свой проект. Я знаю, что им легко делить одну и ту же БД и их установку, что было бы легко. Первый вопрос, как я могу иметь URL admin.mysite.com в качестве моего раздела администратора и www.mysite.com в качестве моего открытого раздела для моих 2 приложений
Кроме того, как настроить его в Azure как веб-приложение? У меня есть одно приложение, в котором я сейчас работаю над Azure (в Интернете нет руководств 5.1, оно каким-то образом разворачивается).
Так может кто-нибудь подробно объяснить, как должна понравиться настройка проекта и как это сделать? Не удалось найти руководства для Laravel 5.1, и поскольку настройка 5.1 отличается от 5 и 4. * Я не уверен, как продолжить.
Согласно вашему описанию, вам нужно развернуть 2 приложения с пользовательскими доменами. Если это так, я думаю, что ваши приложения администратора и пользователя должны быть развернуты отдельно в двух службах Azure Web Apps. Что является преимуществом для управления, развертывания и масштабирования для каждой стороны ваших приложений. Чтобы настроить субдомены для вашего сайта, вы можете обратиться к Сайты Azure и домены подстановочных знаков а также Сопоставление пользовательского субдомена с веб-приложением Azure (веб-сайт).
Если вы настаиваете на развертывании 2 приложений в одной службе веб-приложений Azure, вы можете попробовать это с перезаписью URL-адреса в IIS Web.config, например.
<rule name="RewriteRequestsAdmin" stopProcessing="true">
<match url="^(.*)$" />
<conditions>
<add input="{HTTP_HOST}" pattern="^admin\.XXXX\.com$"/>
</conditions>
<action type="Rewrite" url="AdminApp/public/index.php/{R:0}" />
</rule>
<rule name="RewriteRequestsUser" stopProcessing="true">
<match url="^(.*)$" />
<conditions>
</conditions>
<action type="Rewrite" url="UserApp/public/index.php/{R:0}" />
</rule>
</rules>
Чтобы развернуть свой локальный проект laravel в Azure Web Apps, вы можете использовать инструменты Git или FTP, см. Создайте веб-приложение PHP-MySQL в службе приложений Azure и разверните его с помощью Git. Но по умолчанию папка зависимости vendor
и файлы композитора не будут развернуты в Azure с проектом, поэтому нам нужно войти на консольный сайт KUDU ваших веб-приложений Azure, чтобы установить зависимости. Вы можете установить composer на вкладке расширений сайта вашего сайта консоли KUDU, URL которой должен быть https://<your_site_name>.scm.azurewebsites.net/SiteExtensions/#gallery
затем выполните команду composer install
в корневом каталоге вашего приложения.
Кроме того, вы можете просто использовать командлет на своем сайте консоли KUDU, какой URL должен быть https://<your-website-name>.scm.azurewebsites.net/DebugConsole
выполните следующие команды:
cd site\wwwroot
curl -sS https://getcomposer.org/installer | php
php composer.phar install
Для развертывания laravel в Azure вы можете обратиться к ответу Laravel 5.1 на Windows Azure веб-приложение для дополнительной информации.
Других решений пока нет …