Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln innehåller svar på vanliga frågor och svar om problem med tekniker med öppen källkod för funktionen Web Apps i Azure App Service.
Om ditt Azure-problem inte åtgärdas i den här artikeln går du till Azure-forumen på MSDN och Stack Overflow. Du kan publicera ditt problem i dessa forum eller publicera till @AzureSupport på Twitter. Du kan också skicka en Azure Support begäran. Om du vill skicka en supportbegäran går du till sidan Azure Support och väljer Hämta support.
Hur gör jag för att aktivera PHP-loggning för att felsöka PHP-problem?
Så här aktiverar du PHP-loggning:
Logga in på din Kudu-webbplats (
https://*yourwebsitename*.scm.azurewebsites.net
).På den översta menyn väljer du Felsökningskonsol-CMD>.
Välj mappen Webbplats .
Välj mappen wwwroot.
+ Välj ikonen och välj sedan Ny fil.
Ange filnamnet till .user.ini.
Välj pennikonen bredvid .user.ini.
Lägg till den här koden i filen:
log_errors=on
Välj Spara.
Välj pennikonen bredvid wp-config.php.
Ändra texten till följande kod:
//Enable WP_DEBUG modedefine('WP_DEBUG', true);//Enable debug logging to /wp-content/debug.logdefine('WP_DEBUG_LOG', true); //Suppress errors and warnings to screendefine('WP_DEBUG_DISPLAY', false);//Suppress PHP errors to screenini_set('display_errors', 0);
Starta om webbappen i webbappmenyn i Azure Portal.
Mer information finns i Aktivera WordPress-felloggar.
Hur gör jag för att logga Python-programfel i appar som finns i App Service?
Om Python stöter på ett fel när programmet startas returneras bara en enkel felsida. Ett exempel:
Det går inte att visa sidan eftersom ett internt serverfel har uppstått.
Följ dessa steg för att samla in Python-programfel:
I Azure Portal går du till webbappen och väljer Inställningar.
På fliken Inställningar väljer du Programinställningar.
Under Appinställningar anger du följande nyckel/värde-par:
- Nyckel: WSGI_LOG
- Värde: D:\home\site\wwwroot\logs.txt (ange val av filnamn)
Nu bör du se fel i filen logs.txt i mappen wwwroot .
Hur gör jag för att ändra den version av Node.js program som finns i App Service?
Om du vill ändra versionen av Node.js-programmet kan du använda något av följande alternativ:
I Azure Portal använder du Appinställningar.
I Azure Portal går du till din webbapp.
På bladet Inställningar väljer du Programinställningar.
I Appinställningar kan du ta med WEBSITE_NODE_DEFAULT_VERSION som nyckel och vilken version av Node.js du vill ha som värde.
Gå till Kudu-konsolen (
https://*yourwebsitename*.scm.azurewebsites.net
).Om du vill kontrollera Node.js-versionen anger du följande kommando:
node -v
Ändra filen iisnode.yml . Om du ändrar den Node.js versionen i iisnode.yml-filen anges bara den körningsmiljö som iisnode använder. Din Kudu-cmd och andra använder fortfarande den Node.js version som anges i Appinställningar i Azure Portal.
Om du vill ange iisnode.yml manuellt skapar du en iisnode.yml fil i appens rotmapp. Ta med följande rad i filen:
nodeProcessCommandLine: "D:\Program Files (x86)\nodejs\5.9.1\node.exe"
Ange iisnode.yml-filen med hjälp av package.json under distributionen av källkontroll. Distributionsprocessen för Azure-källkontroll omfattar följande steg:
Flyttar innehåll till Azure-webbappen.
Skapar ett standarddistributionsskript om det inte finns ett (deploy.cmd, .deployment files) i webbappens rotmapp.
Kör ett distributionsskript där den skapar en iisnode.yml fil om du nämner Node.js-versionen i package.json-filmotorn >
"engines": {"node": "5.9.1","npm": "3.7.3"}
Filen iisnode.yml har följande kodrad:
nodeProcessCommandLine: "D:\Program Files (x86)\nodejs\5.9.1\node.exe"
Jag ser meddelandet "Fel vid upprättande av en databasanslutning" i min WordPress-app som finns i App Service. Hur gör jag för att felsöka det här felet?
Om du ser det här felet i Azure WordPress-appen kan du aktivera php_errors.log och debug.log genom att utföra stegen som beskrivs i Aktivera WordPress-felloggar.
När loggarna är aktiverade återskapar du felet och kontrollerar sedan loggarna för att se om anslutningarna tar slut:
[09-Oct-2015 00:03:13 UTC] PHP Warning: mysqli_real_connect(): (HY000/1226): User 'abcdefghijk79' has exceeded the 'max_user_connections' resource (current value: 4) in D:\home\site\wwwroot\wp-includes\wp-db.php on line 1454
Om du ser det här felet i dina debug.log - eller php_errors.log-filer överskrider appen antalet anslutningar. Om du är värd för ClearDB kontrollerar du antalet anslutningar som är tillgängliga i din tjänstplan.
Hur gör jag för att felsöka en Node.js app som finns i App Service?
- Gå till Kudu-konsolen (
https://*yourwebsitename*.scm.azurewebsites.net/DebugConsole
). - Gå till mappen programloggar (D:\home\LogFiles\Application).
- I filen logging_errors.txt söker du efter innehåll.
Hur gör jag för att installera inbyggda Python-moduler i en App Service-webbapp eller API-app?
Vissa paket kanske inte installeras med pip i Azure. Paketet kanske inte är tillgängligt i Python-paketindexet, eller så kan en kompilator krävas (en kompilator är inte tillgänglig på den dator som kör webbappen i App Service). Information om hur du installerar inbyggda moduler i App Service-webbappar och API-appar finns i Installera Python-moduler i App Service.
Hur gör jag för att distribuera en Django-app till App Service med hjälp av Git och den nya versionen av Python?
Information om hur du installerar Django finns i Distribuera en Django-app till App Service.
Var finns Tomcat-loggfilerna?
För Azure Marketplace och anpassade distributioner:
- Mappplats: D:\home\site\wwwroot\bin\apache-tomcat-8.0.33\logs
- Filer av intresse:
- Catalina.<åååå-mm-dd>.log
- host-manager.<åååå-mm-dd>.log
- localhost.<åååå-mm-dd>.log
- föreståndare.<åååå-mm-dd>.log
- site_access_log.<åååå-mm-dd>.log
För distributioner av appinställningar i portalen:
- Mappplats: D:\home\LogFiles
- Filer av intresse:
- Catalina.<åååå-mm-dd>.log
- host-manager.<åååå-mm-dd>.log
- localhost.<åååå-mm-dd>.log
- föreståndare.<åååå-mm-dd>.log
- site_access_log.<åååå-mm-dd>.log
Hur gör jag för att felsöka JDBC-drivrutinsanslutningsfel?
Du kan se följande meddelande i Dina Tomcat-loggar:
Webbprogrammet[ROOT] registrerade JDBC-drivrutinen [com.mysql.jdbc.Driver] men kunde inte avregistrera den när webbprogrammet stoppades. För att förhindra en minnesläcka har JDBC-drivrutinen avregistrerats med två skäl
Lös problemet genom att följa dessa anvisningar:
Ta bort filen sqljdbc*.jar från mappen app/lib.
Om du använder den anpassade Tomcat- eller Azure Marketplace Tomcat-webbservern kopierar du den här .jar filen till tomcat lib-mappen.
Om du aktiverar Java från Azure Portal (välj Java 1.8>Tomcat-server) kopierar du filen sqljdbc*.jar i mappen som är parallell med din app. Lägg sedan till följande classpath-inställning i filen web.config :
<httpPlatform> <environmentVariables> <environmentVariablename ="JAVA_OPTS" value=" -Djava.net.preferIPv4Stack=true -Xms128M -classpath %CLASSPATH%;[Path to the sqljdbc*.jarfile]" /> </environmentVariables> </httpPlatform>
Varför visas fel när jag försöker kopiera liveloggfiler?
Om du försöker kopiera liveloggfiler för en Java-app (till exempel Tomcat) kan det här FTP-felet visas:
Det gick inte att överföra filen [filnamn] Kopiering av filer från fjärrsidan.
Processen kan inte komma åt filen eftersom den används i en annan process.
Felmeddelandet kan variera beroende på FTP-klienten.
Alla Java-appar har det här låsningsproblemet. Endast Kudu stöder nedladdning av den här filen medan appen körs.
Om appen stoppas kan FTP-åtkomsten till dessa filer stoppas.
En annan lösning är att skriva ett webbjobb som körs enligt ett schema och kopierar filerna till en annan katalog. Ett exempelprojekt finns i CopyLogsJob-projektet .
Var hittar jag loggfilerna för Jetty?
För Marketplace och anpassade distributioner finns loggfilen i mappen D:\home\site\wwwroot\bin\jetty-distribution-9.1.2.v20140210\logs . Mappplatsen beror på vilken version av Jetty du använder. Sökvägen som anges här är till exempel för Jetty 9.1.2. Leta efter jetty_<YYYY_MM_DD>.stderrout.log.
För distributioner av portalappinställningar finns loggfilen i D:\home\LogFiles. Leta efter jetty_<YYYY_MM_DD>.stderrout.log.
Kan jag skicka e-post från min Azure-webbapp?
App Service har ingen inbyggd e-postfunktion. Några bra alternativ för att skicka e-post från din app finns i den här Stack Overflow-diskussionen.
Varför omdirigerar min WordPress-webbplats till en annan URL?
Om du nyligen har migrerat till Azure kan WordPress omdirigera till den gamla domän-URL:en. Det här problemet orsakas av en inställning i MySQL-databasen.
WordPress Buddy+ är ett Azure-webbplatstillägg som du kan använda för att uppdatera omdirigerings-URL:en direkt i databasen.
Om du föredrar att manuellt uppdatera omdirigerings-URL:en med hjälp av SQL-frågor eller PHPMyAdmin kan du läsa WordPress: Omdirigera till fel URL.
Hur gör jag för att ändra mitt Lösenord för WordPress-inloggning?
Om du har glömt ditt WordPress-inloggningslösenord kan du använda WordPress Buddy+ för att uppdatera det.
Jag kan inte logga in på WordPress. Hur gör jag för att lösa problemet?
Om du befinner dig utelåst från WordPress efter att nyligen ha installerat ett plugin-program kan du ha ett felaktigt plugin-program. WordPress Buddy+ är ett Azure-webbplatstillägg som kan hjälpa dig att inaktivera plugin-program i WordPress.
Hur gör jag för att migrera min WordPress-databas?
Du har flera alternativ för att migrera MySQL-databasen som är ansluten till din WordPress-webbplats:
- Utvecklare: Använd kommandotolken eller PHPMyAdmin
Hur gör jag för att hjälpa till att göra WordPress säkrare?
Mer information om metodtips för säkerhet för WordPress finns i Metodtips för WordPress-säkerhet i Azure.
Jag försöker använda PHPMyAdmin och jag ser meddelandet "Åtkomst nekad". Hur gör jag för att lösa problemet?
Det här problemet kan uppstå om funktionen MySQL i appen inte körs ännu i den här App Service-instansen. Försök att komma åt webbplatsen för att lösa problemet. Detta startar de processer som krävs, inklusive MySQL-processen i appen. Kontrollera att MySQL i appen körs i Process Explorer genom att kontrollera att mysqld.exe visas i processerna.
När du har kontrollerat att MySQL i appen körs kan du försöka använda PHPMyAdmin.
Jag får ett HTTP 403-fel när jag försöker importera eller exportera min MySQL-databas i appen med hjälp av PHPMyadmin. Hur gör jag för att lösa problemet?
Om du använder en äldre version av Chrome kanske du upplever en känd bugg. Lös problemet genom att uppgradera till en nyare version av Chrome. Prova också att använda en annan webbläsare, till exempel Internet Explorer eller Microsoft Edge, där problemet inte uppstår.
Kontakta oss för att få hjälp
Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.