Share via


Een PHP-app configureren in Azure App Service

Waarschuwing

PHP in Windows heeft het einde van de ondersteuning bereikt in november 2022. PHP wordt alleen ondersteund voor App Service in Linux. Dit artikel is alleen ter referentie.

Deze handleiding laat zien hoe u uw PHP-web-apps, mobiele back-ends en API-apps in Azure App Service configureert. De meest voorkomende configuratietaken komen aan bod.

Als u nog niet eerder met App Service werkt, volgt u eerst de quickstart Een PHP-web-app maken in Azure App Service en de zelfstudie Een PHP-, MySQL- en Redis-app implementeren in Azure App Service .

De PHP-versie weergeven

Voer de volgende opdracht uit om de huidige PHP-versie weer te geven. U kunt de Azure Cloud Shell gebruiken:

az webapp config show --resource-group <resource-group-name> --name <app-name> --query phpVersion

Vervang <resource-group-name> en <app-name> door namen die geschikt zijn voor uw webapplicatie.

Notitie

Als u naar een ontwikkelslot wilt verwijzen, neemt u de parameter --slot op gevolgd door de naam van het slot.

Voer de volgende opdracht uit om alle ondersteunde PHP-versies weer te geven:

az webapp list-runtimes --os windows | grep PHP

Deze handleiding laat zien hoe u uw PHP-web-apps, mobiele back-ends en API-apps in Azure App Service configureert. De meest voorkomende configuratietaken komen aan bod.

Als u nog niet eerder met App Service werkt, volgt u eerst de quickstart Een PHP-web-app maken in Azure App Service en de zelfstudie Een PHP-, MySQL- en Redis-app implementeren in Azure App Service .

De PHP-versie weergeven

Voer de volgende opdracht uit om de huidige PHP-versie weer te geven. U kunt de Azure Cloud Shell gebruiken.

az webapp config show --resource-group <resource-group-name> --name <app-name> --query linuxFxVersion

Vervang <resource-group-name> en <app-name> door namen die geschikt zijn voor uw webapplicatie.

Notitie

Als u naar een ontwikkelslot wilt verwijzen, neemt u de parameter --slot op gevolgd door de naam van het slot.

Voer de volgende opdracht uit om alle ondersteunde PHP-versies weer te geven:

az webapp list-runtimes --os linux | grep PHP

De PHP-versie instellen

Om de PHP-versie in te stellen op 8.1, voert u de volgende opdracht uit:

az webapp config set --resource-group <resource-group-name> --name <app-name> --php-version 8.1

Om de PHP-versie in te stellen op 8.1, voert u de volgende opdracht uit:

az webapp config set --resource-group <resource-group-name> --name <app-name> --linux-fx-version "PHP|8.1"

Wat gebeurt er met verouderde runtimes in App Service?

Verouderde runtimes worden afgeschaft door de onderhoudende organisatie of hebben aanzienlijke beveiligingsproblemen. Dienovereenkomstig worden ze verwijderd uit het maken en configureren van pagina's in de portal. Wanneer een verouderde runtime is verborgen in de portal, blijft elke app die die runtime gebruikt, nog steeds actief.

Als u een app wilt maken met een verouderde runtimeversie die niet meer wordt weergegeven in de portal, gebruikt u de Azure CLI, een ARM-sjabloon of Bicep. Met deze implementatiealternatieven kunt u afgeschafte runtimes maken die uit de portal worden verwijderd, maar die nog steeds worden ondersteund.

Als een runtime volledig is verwijderd uit het App Service-platform, ontvangt de eigenaar van uw Azure-abonnement een e-mailmelding voordat deze wordt verwijderd.

Composer uitvoeren

Als u wilt dat App Service Composer uitvoert tijdens de implementatie, is de eenvoudigste manier om Composer op te nemen in uw opslagplaats.

Wijzig vanuit een lokaal terminalvenster de map naar de hoofdmap van uw repository. Volg vervolgens de instructies bij Download Composer om naar de hoofdmap composer.phar te downloaden.

Voer de volgende opdrachten uit. Als u ze wilt uitvoeren, moet npm zijn geïnstalleerd.

npm install kuduscript -g
kuduscript --node --scriptType bash --suppressPrompt

De hoofdmap van uw opslagplaats bevat nu twee nieuwe bestanden: .deployment en deploy.sh.

Open deploy.sh en vind de sectie Deployment, die er zoals dit voorbeeld uitziet:

##################################################################################################################################
# Deployment
# ----------

Voeg aan het einde van de Deployment sectie de codesectie toe die u nodig hebt om het vereiste hulpprogramma uit te voeren:

# 4. Use composer
echo "$DEPLOYMENT_TARGET"
if [ -e "$DEPLOYMENT_TARGET/composer.json" ]; then
  echo "Found composer.json"
  pushd "$DEPLOYMENT_TARGET"
  php composer.phar install $COMPOSER_ARGS
  exitWithMessageOnError "Composer install failed"
  popd
fi

Voer al uw wijzigingen door en implementeer uw code met behulp van Git of met behulp van ZIP-implementatie met buildautomatisering ingeschakeld. Composer moet nu worden uitgevoerd als onderdeel van implementatieautomatisering.

Voer Bower, Gulp of Grunt uit

Als u wilt dat App Service populaire automatiseringshulpprogramma's uitvoert tijdens de implementatie, zoals Bower, Gulp of Grunt, moet u een aangepast implementatiescript opgeven. App Service voert dit script uit wanneer u implementeert met behulp van Git of met behulp van ZIP-implementatie met buildautomatisering ingeschakeld.

Als u wilt dat uw opslagplaats deze hulpprogramma's uitvoert, moet u deze toevoegen aan de afhankelijkheden in package.json. Voorbeeld:

"dependencies": {
  "bower": "^1.7.9",
  "grunt": "^1.0.1",
  "gulp": "^3.9.1",
  ...
}

Open een lokaal terminalvenster, verander de directory naar de hoofdmap van uw repository en voer de volgende commando's uit. Als u ze wilt uitvoeren, moet npm zijn geïnstalleerd.

npm install kuduscript -g
kuduscript --node --scriptType bash --suppressPrompt

De hoofdmap van uw opslagplaats bevat nu twee nieuwe bestanden: .deployment en deploy.sh.

Open deploy.sh en vind de sectie Deployment, die er zoals dit voorbeeld uitziet:

##################################################################################################################################
# Deployment
# ----------

Deze sectie eindigt met het uitvoeren van npm install --production. Voeg aan het einde van de Deployment sectie de codesectie toe die u nodig hebt om het vereiste hulpprogramma uit te voeren:

Bekijk een voorbeeld in het MEAN.js voorbeeld, waarbij het implementatiescript ook een aangepaste npm install opdracht uitvoert.

Loofgang

Dit fragment wordt uitgevoerd bower install:

if [ -e "$DEPLOYMENT_TARGET/bower.json" ]; then
  cd "$DEPLOYMENT_TARGET"
  eval ./node_modules/.bin/bower install
  exitWithMessageOnError "bower failed"
  cd - > /dev/null
fi

Slok

Dit fragment wordt uitgevoerd gulp imagemin:

if [ -e "$DEPLOYMENT_TARGET/gulpfile.js" ]; then
  cd "$DEPLOYMENT_TARGET"
  eval ./node_modules/.bin/gulp imagemin
  exitWithMessageOnError "gulp failed"
  cd - > /dev/null
fi

Grommen

Dit fragment wordt uitgevoerd grunt:

if [ -e "$DEPLOYMENT_TARGET/Gruntfile.js" ]; then
  cd "$DEPLOYMENT_TARGET"
  eval ./node_modules/.bin/grunt
  exitWithMessageOnError "Grunt failed"
  cd - > /dev/null
fi

De automatisering van bouwbewerkingen aanpassen

Als u uw app implementeert met behulp van Git of zip-pakketten waarvoor buildautomatisering is ingeschakeld, doorloopt de buildautomatisering in App Service de volgende volgorde:

  1. Voer een aangepast script uit als PRE_BUILD_SCRIPT_PATH dit specificeert.
  2. Voer php composer.phar installuit.
  3. Voer een aangepast script uit als POST_BUILD_SCRIPT_PATH dit specificeert.

PRE_BUILD_COMMAND en POST_BUILD_COMMAND zijn omgevingsvariabelen die standaard leeg zijn. Als u prebuild-opdrachten wilt uitvoeren, definieert u PRE_BUILD_COMMAND. Als u achteraf gebouwde opdrachten wilt uitvoeren, definieert u POST_BUILD_COMMAND.

In het volgende voorbeeld worden de twee variabelen opgegeven voor een reeks opdrachten, gescheiden door komma's:

az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings PRE_BUILD_COMMAND="echo foo, scripts/prebuild.sh"
az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings POST_BUILD_COMMAND="echo foo, scripts/postbuild.sh"

Zie Oryx-configuratie voor andere omgevingsvariabelen voor het aanpassen van buildautomatisering.

Zie de Oryx-documentatie over hoe PHP-apps worden gedetecteerd en gebouwd voor meer informatie over hoe App Service PHP-apps uitvoert en bouwt in Linux.

Opstartproces aanpassen

U kunt een aangepaste opdracht uitvoeren tijdens het opstarten van de container. Voer de volgende opdracht uit:

az webapp config set --resource-group <resource-group-name> --name <app-name> --startup-file "<custom-command>"

Toegang tot omgevingsvariabelen

In App Service kunt u app-instellingen instellen buiten uw app-code. U kunt deze instellingen vervolgens openen met behulp van het standaardpatroon getenv() . Als u bijvoorbeeld toegang wilt krijgen tot een app-instelling met de naam DB_HOST, gebruikt u de volgende code:

getenv("DB_HOST")

De hoofdmap van de site wijzigen

Het webframework van uw keuze kan een submap gebruiken als de hoofdmap van de site. Laravel gebruikt bijvoorbeeld de public/ submap als de hoofdmap van de site.

Om de rootmap van de site aan te passen, stelt u het virtuele toepassingspad voor de app in met behulp van de az resource update opdracht. In het volgende voorbeeld wordt de hoofdmap van de site ingesteld op de public/ submap in uw opslagplaats:

az resource update --name web --resource-group <group-name> --namespace Microsoft.Web --resource-type config --parent sites/<app-name> --set properties.virtualApplications[0].physicalPath="site\wwwroot\public" --api-version 2015-06-01

Standaard wijst Azure App Service het hoofdpad van de virtuele toepassing (/) naar de hoofdmap van de geïmplementeerde toepassingsbestanden (sites\wwwroot).

Het webframework van uw keuze kan een submap gebruiken als de hoofdmap van de site. Laravel gebruikt bijvoorbeeld de public/ submap als de hoofdmap van de site.

De standaard PHP-afbeelding voor App Service maakt gebruik van NGINX en u wijzigt de hoofdmap van de site door de NGINX-server te configureren met de root instructie. Dit voorbeeldconfiguratiebestand bevat het volgende fragment waarmee de root instructie wordt gewijzigd:

server {
    #proxy_cache cache;
    #proxy_cache_valid 200 1s;
    listen 8080;
    listen [::]:8080;
    root /home/site/wwwroot/public; # Changed for Laravel

    location / {            
        index  index.php index.html index.htm hostingstart.html;
        try_files $uri $uri/ /index.php?$args; # Changed for Laravel
    }
    ...

De standaardcontainer maakt gebruik van het configuratiebestand op /etc/nginx/sites-available/default. Wijzigingen die u in dit bestand aanbrengt, worden gewist wanneer de app opnieuw wordt gestart. Als u een wijziging wilt aanbrengen die van kracht is bij het opnieuw opstarten van apps, voegt u een aangepaste opstartopdracht toe, zoals in dit voorbeeld:

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

Met deze opdracht wordt het standaard-NGINX-configuratiebestand vervangen door een bestand met de naam default in de hoofdmap van de opslagplaats en wordt NGINX opnieuw gestart.

Een HTTPS-sessie detecteren

In App Service vindt TLS/SSL-beëindiging plaats bij de netwerktaakverdelers, zodat alle HTTPS-aanvragen uw app bereiken als niet-versleutelde HTTP-aanvragen. Als uw app-logica moet controleren of de gebruikersaanvragen zijn versleuteld, controleert u de X-Forwarded-Proto header:

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
// Do something when HTTPS is used
}

Populaire webframeworks bieden toegang tot de X-Forwarded-*-informatie in het patroon van uw gebruikelijke app. In CodeIgniter controleert de functie is_https() de standaardwaarde X_FORWARDED_PROTO .

Instellingen voor php.ini aanpassen

Als u wijzigingen wilt aanbrengen in uw PHP-installatie, kunt u een van de php.ini instructies wijzigen met behulp van de volgende stappen.

Notitie

De beste manier om de PHP-versie en de huidige php.ini configuratie te zien, is door uw app aan te roepen phpinfo() .

Pas de niet-PHP_INI_SYSTEM-richtlijnen aan

Als u de directieven PHP_INI_USER, PHP_INI_PERDIR en PHP_INI_ALL wilt aanpassen, voegt u een .user.ini-bestand toe aan de hoofdmap van uw app.

Voeg configuratie-instellingen toe aan het .user.ini bestand met dezelfde syntaxis die u in een php.ini bestand zou gebruiken. Als u bijvoorbeeld de display_errors instelling wilt inschakelen en de upload_max_filesize instelling 10Mwilt instellen, bevat het .user.ini bestand deze tekst:

 ; Example Settings
 display_errors=On
 upload_max_filesize=10M

 ; Write errors to d:\home\LogFiles\php_errors.log
 ; log_errors=On

Implementeer uw app opnieuw met de wijzigingen en start deze opnieuw.

Als alternatief voor het gebruik van een .user.ini bestand kunt u ini_set() gebruiken in uw app om deze niet-PHP_INI_SYSTEM-richtlijnen aan te passen.

Als u , PHP_INI_USER, en PHP_INI_PERDIR richtlijnen voor Linux-web-apps, zoals PHP_INI_ALL en upload_max_filesize, wilt aanpassenexpose_php, gebruikt u een aangepast .ini bestand. U kunt deze maken in een SSH-sessie. Zet eerst de map op:

  1. Ga naar uw Kudu-site. Als u de willekeurige hash- en regiowaarden wilt ophalen, kopieert u het standaarddomein in uw app-overzicht.
  2. Selecteer in het bovenste menu de foutopsporingsconsole en vervolgens Bash of SSH.
  3. Ga in Bash of SSH naar uw /home/site/wwwroot directory.
  4. Maak een map met de naam ini (bijvoorbeeld mkdir ini).
  5. Wijzig de huidige werkmap in de ini map die u hebt gemaakt.

Maak vervolgens een .ini bestand waarin u uw instellingen toevoegt. In dit voorbeeld wordt extensions.inigebruikt. Er zijn geen bestandseditors zoals Vi, Vim of Nano, dus gebruik Echo deze om de instellingen aan het bestand toe te voegen. Wijzig de waarde voor upload_max_filesize van 2M in 50M. Gebruik de volgende opdracht om de instelling toe te voegen en een extensions.ini bestand te maken als deze nog niet bestaat:

/home/site/wwwroot/ini>echo "upload_max_filesize=50M" >> extensions.ini
/home/site/wwwroot/ini>cat extensions.ini

upload_max_filesize=50M

/home/site/wwwroot/ini>

Voeg in Azure Portal een toepassingsinstelling toe om de ini map te scannen die u zojuist hebt gemaakt om de wijziging toe te passen op upload_max_filesize:

  1. Ga naar Azure Portal en selecteer uw App Service Linux PHP-toepassing.
  2. Ga naarOmgevingsvariabelen instellingen>.
  3. Selecteer + Toevoegen.
  4. Voer bij NaamPHP_INI_SCAN_DIR en voor Waarde in :/home/site/wwwroot/ini.
  5. Selecteer Toepassen en vervolgens Opnieuw toepassen . Bevestig uw wijzigingen.

Zorg ervoor dat u de dubbele punt (:) opneemt bij het toevoegen van aangepaste paden aan PHP_INI_SCAN_DIR. Als u dit weglaat, zal NGINX een 404-fout retourneren.

Notitie

Als u een PHP-extensie, zoals GD, opnieuw hebt gecompileerd, volgt u de stappen bij PHP-extensies opnieuw compileren.

Richtlijnen voor PHP_INI_SYSTEM aanpassen

Als u richtlijnen wilt aanpassen PHP_INI_SYSTEM, gebruikt u de PHP_INI_SCAN_DIR app-instelling.

Voer eerst de volgende opdracht uit om een app-instelling toe te voegen met de naam PHP_INI_SCAN_DIR:

az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings PHP_INI_SCAN_DIR="d:\home\site\ini"

Selecteer uw app in de Azure Portal. Selecteer onder Ontwikkeltools in het zijbalkmenu de optie Geavanceerde tools en ga vervolgens naar d:\home\site SSH gebruiken.

Maak een map in d:\home\site met de naam ini. Maak vervolgens een .ini bestand in de d:\home\site\ini map, settings.inibijvoorbeeld met de richtlijnen die u wilt aanpassen. Gebruik dezelfde syntaxis die u in een php.ini bestand zou gebruiken.

Als u bijvoorbeeld de waarde van expose_phpwilt wijzigen, voert u de volgende opdrachten uit:

cd /home/site
mkdir ini
echo "expose_php = Off" >> ini/setting.ini

Start de app opnieuw om de wijzigingen door te voeren.

Als u richtlijnen wilt aanpassen PHP_INI_SYSTEM , kunt u de .htaccess-benadering niet gebruiken. App Service biedt een afzonderlijk mechanisme dat gebruikmaakt van de PHP_INI_SCAN_DIR app-instelling.

Voer eerst de volgende opdracht uit om een app-instelling toe te voegen met de naam PHP_INI_SCAN_DIR:

az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings PHP_INI_SCAN_DIR="/usr/local/etc/php/conf.d:/home/site/ini"

De waarde /usr/local/etc/php/conf.d is de standaardmap waar php.ini zich bevindt. De waarde /home/site/ini is de aangepaste map waarin u een bestand met aangepaste .ini toevoegt. U scheidt de waarden met een dubbele punt (:).

Ga naar de web SSH-sessie met uw Linux-container.

Maak een map in /home/site met de naam ini. Maak vervolgens een .ini bestand in de /home/site/ini map, settings.inibijvoorbeeld met de richtlijnen die u wilt aanpassen. Gebruik dezelfde syntaxis die u in een php.ini bestand zou gebruiken.

Hint

De ingebouwde Linux-containers in App Service gebruiken /home deze als permanente gedeelde opslag.

Als u bijvoorbeeld de waarde van expose_phpwilt wijzigen, voert u de volgende opdrachten uit:

cd /home/site
mkdir ini
echo "expose_php = Off" >> ini/setting.ini

Start de app opnieuw om de wijzigingen door te voeren.

PHP-extensies inschakelen

De ingebouwde PHP-installaties bevatten de meest gebruikte extensies. U kunt meer extensies op dezelfde manier inschakelen als u php.ini instructies aanpast.

Notitie

De beste manier om de PHP-versie en de huidige php.ini configuratie te zien, is door uw app aan te roepen phpinfo() .

Als u andere extensies wilt inschakelen, gebruikt u de volgende stappen:

  1. Voeg een bin map toe aan de hoofdmap van uw app en plaats de .dll extensiebestanden erin, mongodb.dllbijvoorbeeld . Zorg ervoor dat de extensies compatibel zijn met de PHP-versie in Azure en dat ze VC9 en niet-thread-veilig (NTS) compatibel zijn.

  2. Implementeer uw wijzigingen.

  3. Volg de stappen in Richtlijnen aanpassen PHP_INI_SYSTEM en voeg de extensies toe aan het aangepaste .ini-bestand met de extensie of zend_extension instructie:

    extension=d:\home\site\wwwroot\bin\mongodb.dll
    zend_extension=d:\home\site\wwwroot\bin\xdebug.dll
    

Start de app opnieuw om de wijzigingen door te voeren.

De ingebouwde PHP-installaties bevatten de meest gebruikte extensies. U kunt meer extensies op dezelfde manier inschakelen als u php.ini instructies aanpast.

Notitie

De beste manier om de PHP-versie en de huidige php.ini configuratie te zien, is door uw app aan te roepen phpinfo() .

Als u andere extensies wilt inschakelen, gebruikt u de volgende stappen:

  1. Voeg een bin map toe aan de hoofdmap van uw app en plaats de .so-extensiebestanden erin (bijvoorbeeld mongodb.so). Zorg ervoor dat de extensies compatibel zijn met de PHP-versie in Azure en dat ze VC9 en niet-thread-veilig (NTS) compatibel zijn.

  2. Implementeer uw wijzigingen.

  3. Volg de stappen in Richtlijnen aanpassen PHP_INI_SYSTEM en voeg de extensies toe aan het aangepaste .ini-bestand met de extensie of zend_extension instructie:

    extension=/home/site/wwwroot/bin/mongodb.so
    zend_extension=/home/site/wwwroot/bin/xdebug.so
    

Start de app opnieuw om de wijzigingen door te voeren.

Toegang tot diagnostische logboeken

Gebruik het standaardhulpprogramma error_log() om uw diagnostische logboeken weer te geven in Azure App Service.

Als u toegang wilt krijgen tot de consolelogboeken die zijn gegenereerd vanuit uw toepassingscode in App Service, schakelt u diagnostische logboekregistratie in door de volgende opdracht uit te voeren in Cloud Shell:

az webapp log config --resource-group <resource-group-name> --name <app-name> --docker-container-logging filesystem --level Verbose

Mogelijke waarden voor --level zijn Error, Warning, Info en Verbose. Elk hoger niveau omvat het vorige niveau. Bijvoorbeeld, Error bevat alleen foutberichten. Verbose omvat alle berichten.

Nadat u diagnostische logboekregistratie hebt ingeschakeld, voert u de volgende opdracht uit om de logboekstream te zien:

az webapp log tail --resource-group <resource-group-name> --name <app-name>

Als consolelogboeken niet onmiddellijk worden weergegeven, controleert u het na 30 seconden opnieuw.

Als u wilt stoppen met logboekstreaming, selecteert u Ctrl+C.

U hebt toegang tot de consolelogboeken die worden gegenereerd vanuit de container.

Voer de volgende opdracht uit om containerlogboekregistratie in te schakelen:

az webapp log config --name <app-name> --resource-group <resource-group-name> --docker-container-logging filesystem

Vervang <app-name> en <resource-group-name> door namen die geschikt zijn voor uw webapplicatie.

Nadat u containerlogboekregistratie hebt ingeschakeld, voert u de volgende opdracht uit om de logboekstream te zien:

az webapp log tail --name <app-name> --resource-group <resource-group-name>

Als consolelogboeken niet onmiddellijk worden weergegeven, controleert u het na 30 seconden opnieuw.

Als u wilt stoppen met logboekstreaming, selecteert u Ctrl+C.

Problemen oplossen

Wanneer een werkende PHP-app zich anders gedraagt in App Service of fouten bevat, kunt u de volgende oplossingen proberen:

  • Toegang tot de diagnostische logboekstroom.
  • Test de app lokaal in de productiemodus. App Service voert uw app uit in de productiemodus, dus u moet ervoor zorgen dat uw project werkt zoals verwacht in de productiemodus lokaal. Bijvoorbeeld:
    • Afhankelijk van uw composer.json bestand kunnen verschillende pakketten worden geïnstalleerd voor de productiemodus (require versus require-dev).
    • Bepaalde webframeworks kunnen statische bestanden mogelijk anders implementeren in de productiemodus.
    • Bepaalde webframeworks kunnen aangepaste opstartscripts gebruiken wanneer ze worden uitgevoerd in de productiemodus.
  • Voer uw app uit in App Service in de foutopsporingsmodus. In Laravel kunt u uw app bijvoorbeeld configureren om foutopsporingsberichten in productie uit te voeren door de app-instelling APP_DEBUG in te stellen op true.

Het robots933456-bericht negeren in logboeken

Mogelijk ziet u het volgende bericht in de containerlogboeken:

2019-04-08T14:07:56.641002476Z "-" - - [08/Apr/2019:14:07:56 +0000] "GET /robots933456.txt HTTP/1.1" 404 415 "-" "-"

U kunt dit bericht veilig negeren. /robots933456.txt is een dummy-URL-pad dat App Service gebruikt om te controleren of de container aanvragen kan verwerken. Een 404-antwoord geeft aan dat het pad niet bestaat en geeft aan App Service aan dat de container in orde is en klaar is om te reageren op aanvragen.