![](/img/trans.png)
[英]How do I access an azure app service without public access through a virtual network?
[英]How to Deploy an App Service in azure with Laravel 8 and PHP 8 without public endpoint?
我正在 azure 中使用 Laravel 8 和 PHP 8 部署應用程序服務,但我無法從 URL 中刪除/public。
通常我們解決這個問題
將域定向到公用文件夾和公用文件夾中的 .htaccess/web.config 文件
將 .htaccess/web.config 文件放在根目錄中
但在這里它不起作用。
我正在為未來的用戶回答這個問題,因為我花了大約 7-8 個小時來修復它。
我從schaako.de 、 cristopher和azureossd那里得到了幫助,並將它寫在這里。
開通SSH
通過Azure Portal
導航到您的App Service
。 在Development Tools section
下,select SSH
。
默認站點配置
現有配置的副本並使用此命令將文件放在/home/site
目錄中
cp /etc/nginx/sites-available/default /home/site/default
現在編輯/home/site/default
文件並更新,如laravel 文檔服務器配置設置中所述
location / {
index index.php index.html index.htm hostingstart.html;
try_files $uri $uri/ /index.php?$query_string;
}
自定義啟動腳本
您現在需要創建自定義啟動腳本並將文件另存為/home/site/startupscriptbymoon.sh
在上面的文件中添加以下命令
cp /home/site/default /etc/nginx/sites-available/default
service nginx reload
啟動命令和測試
現在通過Azure Portal
導航回您的App Service
。 在Settings section
下,select Configuration
,然后是General Settings
。
在Startup Command
文本框中輸入以下內容:
/home/site/startupscriptbymoon.sh
導航回您的應用程序並重新加載。 請享用!
我經歷了同樣的斗爭,並在我的博客https://www.azurephp.dev/2021/09/php-8-on-azure-app-service/中記錄了我的發現。
移動到 Linux 只有容器,從 Apache 到 Nginx 增加了我在文章中報告的一系列問題。 查看更多詳細信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.