简体   繁体   中英

How to Deploy an App Service in azure with Laravel 8 and PHP 8 without public endpoint?

I am Deploying an App Service in azure with Laravel 8 and PHP 8 but i am unable to remove /public from URL.

Generally we solve this problem with

  1. Directing Domain to public folder and .htaccess/web.config file in public folder

  2. placing an.htaccess/web.config file in root

but here it is not working.

I am answering this question for future users as i spent apprx 7-8 hours in fixing it.

I took help from schaako.de , cristopher and azureossd and writing it here.

Open SSH

Navigate to your App Service via the Azure Portal . Under the Development Tools section , select SSH .

Default site config

copy of the existing configuration and place the file inside the /home/site directory using this commands

cp /etc/nginx/sites-available/default /home/site/default

Now edit the /home/site/default file and update as described in laravel documentation Server Configuration settings

location / {
    index  index.php index.html index.htm hostingstart.html;
    try_files $uri $uri/ /index.php?$query_string;
}

custom startup script

You will now need to create a custom startup script and save the file as /home/site/startupscriptbymoon.sh

Add following commands in above file

cp /home/site/default /etc/nginx/sites-available/default
service nginx reload

Startup Command and Test

Now navigate back to your App Service via the Azure Portal . Under the Settings section , select Configuration and then General Settings .

In Startup Command text box enter the following:

/home/site/startupscriptbymoon.sh

navigate back to your application and reload. enjoy!

I went through the same struggle and blogged my findings at my blog https://www.azurephp.dev/2021/09/php-8-on-azure-app-service/ .

The move to Linux only containers and from Apache to Nginx added a whole series of troubles which I reported in my article. Check it out for more details.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM