|
| 1 | +--- |
| 2 | +title: 'Frequently asked questions about WordPress on App Service' |
| 3 | +description: Use this article to find frequently asked questions and answers about WordPress on Azure App Service. |
| 4 | +keywords: app service, azure app service, wordpress, preview, app service on linux, plugins, mysql flexible server, wordpress on linux, php |
| 5 | +ai-usage: ai-assisted |
| 6 | +author: reddyabhishek |
| 7 | +ms.topic: faq |
| 8 | +ms.date: 12/13/2024 |
| 9 | +# ms.devlang: wordpress |
| 10 | +ms.author: areddys |
| 11 | +ms.custom: mvc, linux-related-content |
| 12 | +--- |
| 13 | +# WordPress on App Service: Frequently Asked Questions |
| 14 | + |
| 15 | +## Are there limits on the number of sites, visits, storage, or bandwidth? |
| 16 | + |
| 17 | +The allocated resources for an App Service plan and database tier determine the hosting capacity. For example: |
| 18 | +- **App Service B1 Plan:** Includes 1 core, 1.75 GB RAM, and 10 GB storage. |
| 19 | +- **Database B1ms Instance:** Offers 1 vCore, 2 GB RAM, and storage up to 16 GB. |
| 20 | + |
| 21 | +There's no fixed limit on the number of sites you can host, but recommended app limits by SKU are: |
| 22 | + |
| 23 | +| **SKU** | **Recommended Max Apps** | |
| 24 | +|--------------------|---------------------------| |
| 25 | +| B1, S1, P1v2, I1v1 | 8 | |
| 26 | +| B2, S2, P2v2, I2v1 | 16 | |
| 27 | +| B3, S3, P3v2, I3v1 | 32 | |
| 28 | +| P1v3, I1v2 | 16 | |
| 29 | +| P2v3, I2v2 | 32 | |
| 30 | +| P3v3, I3v2 | 64 | |
| 31 | + |
| 32 | +Bandwidth is unlimited, but [charges apply for internet egress](https://azure.microsoft.com/pricing/details/bandwidth/). |
| 33 | + |
| 34 | +## How are security patches updated? |
| 35 | +Azure manages security patches for core technologies, while WordPress-specific updates may require manual or semi-automated steps: |
| 36 | +- **PHP Major Versions:** Update manually under **App Service > Settings > Configuration**. |
| 37 | +- **WordPress Core:** Minor updates are automatic, while major updates need manual configuration. |
| 38 | +- **Plugins and Themes:** Perform manual updates after backing up your site to avoid issues. WordPress also offers auto update options. |
| 39 | + |
| 40 | +See [How to keep your WordPress website stack on Azure App Service up to date](https://techcommunity.microsoft.com/blog/appsonazureblog/how-to-keep-your-wordpress-website-stack-on-azure-app-service-up-to-date/3832193) for more information. |
| 41 | + |
| 42 | +## What security features are available to protect my website? |
| 43 | +Azure App Service integrates robust security features to safeguard WordPress sites: |
| 44 | +- **[App Service Security](overview-security.md):** HTTPS, IP restrictions, certificates, authentication, and network isolation. |
| 45 | +- **[Easy Authentication](overview-authentication-authorization.md):** Built-in identity provider integration with minimal effort. |
| 46 | +- **[Azure Database for MySQL](/security/benchmark/azure/baselines/azure-database-for-mysql-flexible-server-security-baseline):** Advanced protections for Azure MySQL servers, including encryption and backup capabilities. |
| 47 | +- **[Virtual Network (VNET)](/azure/virtual-network/virtual-networks-overview):** Secure communication between Azure resources, the internet, and on-premises networks. |
| 48 | +- **[Managed Identities](/entra/identity/managed-identities-azure-resources/how-manage-user-assigned-managed-identities):** Credential-free access to resources using Microsoft Entra tokens. |
| 49 | +- **[Microsoft Defender for Cloud](/azure/defender-for-cloud/defender-for-cloud-introduction):** Proactive threat detection with DevSecOps integration. |
| 50 | +- **[Azure Key Vault](/azure/key-vault/):** Secure storage for keys, secrets, and certificates. |
| 51 | +- **[Microsoft Entra ID](/entra/identity/):** Single sign-On (SSO) for seamless authentication. |
| 52 | + |
| 53 | + |
| 54 | + |
| 55 | +## How can I set up WordPress Multisite? |
| 56 | +WordPress Multisite allows managing multiple sites from a single installation. To enable: |
| 57 | +Set up a **[subdirectory-based Multisite](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/how-to-set-up-subdirectory-multisite-in-wordpress-on-azure-app/ba-p/3791071)** or **[subdomain-based Multisite](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/how-to-set-up-subdomain-multisite-in-wordpress-on-app-service/ba-p/3886283)**. |
| 58 | + |
| 59 | +> [!NOTE] |
| 60 | +> - Conversion to Multisite is permanent; reverting to a single site is unsupported. |
| 61 | +> - Switching between subdirectory and subdomain setups isn't allowed. |
| 62 | +> |
| 63 | +
|
| 64 | +## How do I access my WordPress website's database? |
| 65 | +The database can be accessed using **phpMyAdmin** at: `https://<your-site-link>/phpmyadmin`. |
| 66 | +Use the `DATABASE_USERNAME` as the username and a generated token as the password (tokens can be retrieved via **Kudu SSH**). |
| 67 | + |
| 68 | +## How do I enable a custom domain for my WordPress website? |
| 69 | +Custom domains can be set up with these resources: |
| 70 | +- [Using custom domains with WordPress on Azure App Service](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/how-to-use-custom-domains-with-wordpress-on-app-service/ba-p/3886247) |
| 71 | +- [Configuring custom domains with Azure Front Door](/azure/frontdoor/front-door-custom-domain) |
| 72 | + |
| 73 | +## Does WordPress on App Service have email functionality? |
| 74 | +Yes, email functionality is supported through **[Azure Communication Services](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/wordpress-on-azure-appservice-email-integration/ba-p/3890486)**. [Custom email domains can be also be configured](/azure/communication-services/quickstarts/email/add-custom-verified-domains). |
| 75 | + |
| 76 | +## How can I update NGINX configurations for my WordPress website? |
| 77 | +NGINX configurations can be updated using a **startup script**. Detailed instructions are available in the [startup script guide](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/updating-nginx-default-configurations-on-azure-app-services/ba-p/3710146). |
| 78 | + |
| 79 | +## How can I access error logs for my WordPress website? |
| 80 | +Access error logs for debugging via **App Service logs** or the **Kudu dashboard**. Refer to the [documentation](troubleshoot-diagnostic-logs.md) for detailed steps. |
| 81 | + |
| 82 | +## How do I estimate pricing for hosting a WordPress site on Azure? |
| 83 | +Use the [Azure Pricing Calculator](https://azure.microsoft.com/pricing/) to estimate hosting costs, considering App Service, MySQL, CDN, Blob Storage, and other components. Use this [pricing estimate guide](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/how-to-estimate-pricing-for-wordpress-on-app-service/ba-p/4029262) for more information. |
| 84 | + |
| 85 | +## How can I debug and monitor my WordPress site? |
| 86 | +Key tools for debugging and monitoring WordPress sites include: |
| 87 | +- **[App Service Logs](troubleshoot-diagnostic-logs.md)** |
| 88 | +- **[Kudu](https://techcommunity.microsoft.com/blog/appsonazureblog/kudu-dashboard-explained---wordpress-on-app-service/4030035)** |
| 89 | +- **[SSH Access](configure-linux-open-ssh-session.md?pivots=container-linux)** |
| 90 | + |
| 91 | +### PhpMyAdmin |
| 92 | +WordPress on App Service utilizes an Azure Database for MySQL flexible server, which is integrated into a VNET. This setup restricts database access to within the VNET. WordPress on App Service includes phpMyAdmin by default. You can access it at: https://`<your-site-link>`/phpmyadmin. |
| 93 | + |
| 94 | +If you are using Managed Identities, you can log in to phpMyAdmin by using the value from DATABASE_USERNAME environment variable as the username and the token as the password. To find the token use your Kudu SSH to run the following command: |
| 95 | + |
| 96 | +/usr/local/bin/fetch-mysql-access-token.sh |
| 97 | + |
| 98 | +Or you can find the database username and password from App Service environment variables |
| 99 | + |
| 100 | +## What features can I use to boost my WordPress site's performance? |
| 101 | + |
| 102 | +Enhance performance with these features / plugins: |
| 103 | +- **[Content Delivery Network (CDN)](/azure/cdn/)** |
| 104 | +- **[Azure Front Door (AFD)](/azure/frontdoor/)** |
| 105 | +- **[Blob Storage](/azure/storage/blobs/)** |
| 106 | +- **Dynamic Caching** |
| 107 | +- **[Image Compression (Smush)](https://wordpress.org/plugins/wp-smushit/)** |
| 108 | +- **[Scaling Up](/azure/app-service/manage-scale-up) and [Out](/azure/app-service/manage-automatic-scaling)** |
| 109 | +- **[Redis Cache](https://techcommunity.microsoft.com/blog/appsonazureblog/distributed-caching-with-azure-redis-to-boost-your-wordpress-sites-performance/3974605)** |
| 110 | + |
| 111 | +## What are the options for configuring and setting up my WordPress site? |
| 112 | + |
| 113 | +Options for setting up WordPress include: |
| 114 | +- **[FTP File Transfers](/azure/app-service/deploy-ftp)** |
| 115 | +- **[NGINX Configuration Updates](https://techcommunity.microsoft.com/t5/apps-on-azure-blog/updating-nginx-default-configurations-on-azure-app-services/ba-p/3710146)** |
| 116 | +- **[App Service settings](/azure/app-service/configure-common)** |
| 117 | + |
| 118 | +## How can I build a headless WordPress site? |
| 119 | +Enable **WP REST APIs** and integrate with **Static Web Apps** to create a decoupled front-end experience. Learn more [here](https://techcommunity.microsoft.com/blog/appsonazureblog/integrating-wordpress-on-app-service-with-azure-static-web-apps/4004955). |
| 120 | + |
| 121 | +## What features are available for creating an enterprise-grade production website? |
| 122 | +Key features include: |
| 123 | +- [Staging slots](https://techcommunity.microsoft.com/blog/appsonazureblog/how-to-set-up-staging-slots-in-wordpress-on-app-service/4144847) for safe testing |
| 124 | +- [Custom domains](https://techcommunity.microsoft.com/blog/appsonazureblog/how-to-use-custom-domains-with-wordpress-on-app-service/3886247) and SSL certificates |
| 125 | +- [CI/CD](https://techcommunity.microsoft.com/blog/appsonazureblog/how-to-integrate-continuous-integration-and-deployment-with-wordpress-on-app-ser/4144886) pipelines for automated deployments |
| 126 | +- [Startup scripts](https://techcommunity.microsoft.com/blog/appsonazureblog/how-to-run-bash-scripts-in-wordpress-on-azure-app-service/3625692) for configuration |
| 127 | +- [Emails with custom domain](/azure/communication-services/quickstarts/email/add-custom-verified-domains) |
| 128 | +- [Scaling](/azure/app-service/manage-scale-up) and [load testing](/azure/load-testing/concept-load-test-app-service) capabilities |
| 129 | + |
| 130 | +## What are common errors for WordPress on App Service, and how can I troubleshoot? |
| 131 | +Typical issues and resolutions: |
| 132 | +- **[Debug Logs](https://github.com/Azure/wordpress-linux-appservice/blob/main/WordPress/enabling_debug_logs_for_wordpress.md):** Enable for troubleshooting. |
| 133 | +- **[CORS Issues](https://github.com/Azure/wordpress-linux-appservice/blob/main/WordPress/cors_issue_with_azure_cdn_frontdoor_blob.md):** Adjust settings in CDN or Azure Front Door. |
| 134 | +- **[Existing WordPress Detected Warning](https://github.com/Azure/wordpress-linux-appservice/blob/main/WordPress/troubleshooting-guides/tsg_existing_wordpress_installation_detected.md):** Follow [troubleshooting steps](#). |
| 135 | +- **[Intl Extension issues](https://techcommunity.microsoft.com/blog/appsonazureblog/how-to-install-intl-extension-on-wordpress-on-azure-app-service/4138353):** Install via the configuration panel. |
0 commit comments