Web Apps

Web Apps in Azure App Service provides a scalable, reliable, and easy-to-use environment for hosting web applications. Select from a range of frameworks and templates to create a web site in seconds. Use any tool or OS to develop your site with .NET, PHP, Node.js, Python and more. Choose from a variety of source control options including TFS, GitHub, BitBucket and others to set up continuous integration and develop as a team.

More details about the services are available in the App Service documentation. If you have a technical issue, please open a post on the developer forums through Stack Overflow or MSDN.

Products that we listen to in this space include: App Service, Web Apps, API Apps and Web App for Containers.

We welcome user feedback and feature requests!

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Add Application Initialization Support for Scale Up/Down

    The application initialization/warmup feature works great when scaling out/in, but when scaling up/down requests are immediately routed to the new instances before the application is warmed up. It would be great if the new instances could be warmed up before rerouting requests to them.

    170 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  2. Associating Hybrid Connections to Azure App Services cannot be automated

    There is no way to associate a Hybrid Connection to an Azure App Service via ARM Template or PowerShell.

    This is a significant gap since we cannot automate this at all when that is the driving factor for DevOps and PaaS services.

    108 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    15 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  3. Allow Custom URL Rewrite Handler for Database

    Allow installation of a GAC custom rewrite handler for doing URL rewrites on Web Apps using a database backend.

    71 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  4. Add "Allow access to Azure services" in Azure App Service IP restrictions

    Re this thread

    https://www.yammer.com/azureadvisors/#/Threads/show?threadId=945875058

    I'd used PowerShell to manually add IP restrictions a couple of weeks ago. Right away my App Insights availability tests started failing so I narrowed the test location down to Dublin IE and allowed those IP/Subnets.

    Add an option similar to SQL Server "Allow access to Azure services" That white lists Azure App insights availability tests for selected regions.

    Thanks

    Luke

    51 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →

    There was some confusion about this feature due to the documentation for it and UX originally released had a bug.

    The IP Restrictions feature works as an ALLOW list, rather than a DENY list as originally stated.

    The ask here is still valid, there are other services in azure (like SQL) that have UI to explicitly allow other azure services to reach the database. While this is convenient for development scenarios, it’s not a good idea for securing the resource.

    We’ll keep an eye on this request and see if it gathers more up-votes.

    -Byron

  5. FTP accounts tied to subscription, not user. Not enough auditing

    In the current model, FTP credentials are tied to a user's azure login. Thus, we have no visibility into credentials that are set, as we cannot see other people's FTP credentials they've set. Furthermore, when an FTP account is created or deleted, nothing is logged. This makes it difficult to audit who has access. With the logins being tied to the user, when the user leaves, there is no way for us to reclaim that username unless they delete their ftp credentials first. This doesn't always work, as a user may depart abruptly or not on good terms. Although the…

    47 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  6. implement a graceful restart an Azure Web App with multiple instance

    We would like to have feature through which we can perform the configuration changes through portal without down time when there are multiple instances are available. The similar stuff is available in advanced restart where you can define the delay between restart of each instance.

    40 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →

    Hi everyone, we have some long-term plans to improve the restart speed and experience.

    For this scenario we suggest creating a new slot, applying your changes there, validating they work, and swapping your changes. This pattern will avoid downtime on your production site.

  7. App Service Public SSL Certificates persist When Swapping Slot

    Currently, if a Web App slot (ex: "staging") is created from an existing Web App that has Public SSL Certificates configured, these are not present on the new slot.

    In addition during a slot swap, the "production" slot does not persist the Public SSL Certificates. The configuration for the Public SSL Certificate moves to the "staging" slot.

    This behavior does not appear for other configurations such as Private SSL Certificates or AppSettings and could lead to "production" issues if the Public SSL Certificate is expected on the Web App.

    The consumer recourse currently is to re-apply the Public SSL Certificates…

    10 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  8. Copy the application log settings when cloning deployment slots

    It would be better if the log settings are copied into a newly created slot, when we clone a slot, just like the app settings does.
    For example, currently when we turn the blob logging enabled and then clone the slot, the logging get disabled in a new slot.
    On the contrary, the blob container settings remains.

    This is because the blob container setting is saved as an environment variable in app settings.
    Here is the result in ResourceExplorer, when I cloned a slot.

    "applicationLogs": {
    "fileSystem": {
    "level": "Off"
    },
    "azureTableStorage": {
    "level": "Off",
    "sasUrl": "https://strageaccountsample.table.core.windows.net/xxxxxxx"
    }, …

    6 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  9. Idempotent swap slot operation to support swapping via ARM template deployments

    This would simplify deployment governance (no need for an out-of-band swap operation when doing a deployment). Ideally the API would look something like:
    PUT Microsoft.Web/sites/mysite/swapstate
    {
    "properties": {
    "slot": "staging", // The slot to look at
    "type": "oldest|newest" // Whether the oldest or newest bits between the "active" and the specified slot should be taken. This allows our operation to be idempotent and predictable.
    }
    }

    6 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  10. It should be possible to renew/replace an SSL certificate via ARM templates

    When I deploy an ARM template (that has previously been deployed) which contains a certificate, I would expect that the certificate would be updated/replaced when the pfxBlob has changed.

    {
    "type": "Microsoft.Web/certificates",
    "name": "[variables('appService_name')]",
    "apiVersion": "2016-03-01",
    "location": "[parameters('resourceLocation')]",
    "properties": {
    "pfxBlob": "[parameters('sslCertificateData')]",
    "password": "[parameters('sslCertificatePassword')]"
    }
    }

    The current behaviour is that that the deployment will succeed and the certificate will not be updated. This is not intuitive.

    Currently, to work around this limitation, it is necessary to remove the existing SSL binding and certificate via the portal or Powershell.

    Remove-AzureRmWebAppSSLBinding -Name $bindingName -ResourceGroupName $resourceGroupName -WebAppName $webAppName -DeleteCertificate $true

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  11. Make Vnet sticky to slot

    When switching slots currently if you have a vnet on one slot and not the other, the vnet is switched between slots. As this vnet may be pointing to a testing environment on one slot and a production environment on the other slot, it would make sense to have this be a sticky setting to the slot, with the option to make it global across the app in the case that all slots will be using the same vnet.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  12. folders in static websites

    Allow folders creations in Azure Static Website

    I could not use Azure Statics Website because it does not allow to upload a whole folder. I Just went to Netlify, upload my folder and everything was working fine, including http2 protocol.

    Please copy them.

    Regards

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  13. [Linux] Don't try to run Docker container after failed pull operation

    Currently App Service would run and fail after unsuccessful pull operation (e.g. triggered by a change to linux_fs_version).

    BTW, pull fails for newly created App Service (using Terraform), it seems that linux_fx_version triggers pull without DOCKER_REGISTRY_SERVER_* application settings, after 4 minutes it successfully retries and pulls the image.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  14. Option to protect deployment slots from being indexed by search engines

    Please provide the ability for Web App deployment slots to reply with a NOINDEX directive to search engines, either with response headers or a custom robots.txt file for the slots.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  15. 1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  16. Add an option to also swap resource tags if desired

    When swapping slots have an option to select which webapp resource tags to swap too.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  17. App services should show the max supported version of ASP.NET core

    If you deploy an app with a version of .NET Core that isn't deployed on Azure yet, you get horrible to debug errors that you have to enable stdout logging on to get to the bottom of.

    (Ultimatly editing csproj with PublishWithAspNetCoreTargetManifest set to false)

    Confusing and time consuming. It would be great if Azure showed you some where on the app, a max supported version of .NET core and some kind of publishing warning if you try to push something higher.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  18. php/laravel, Django and NodeJS Deployment

    I would like to see support for PHP/Laravel, DJango and seamless and possible just like i can do in heroku cli or how we do in asp.net core. It will be great if I don't need to worry about composer or pip or virtual environment. I push my app using git or from my repository, Azure App Service should auto detect my language and all the packages and install them on the fly, including root directories and environment variables. Also, web.config should be scrapped out entirely or auto-configured. {Heroku detects my php / Laravel and do all the configurations for…

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →

    Have you tried looking into App Service hosted on Linux:
    https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-intro

    While the deployment won’t pull all your dependencies, you can still used a blessed image for your stack and even containerize your solution and host them on Linux.

    One more item to look at is the new CLI “up” command we have for creating apps. You can check the quick session we had at Microsoft Ignite about this feature:
    https://myignite.techcommunity.microsoft.com/sessions/66652

    We’ll leave this under review to see if there are any improvements to our deployment that will happen as part of Linux hosting.

    Thanks,
    Oded

  19. Adding variable support on tag field when deploying docker container on WebApp container

    I'm using docker for all the Ci pipeline, that works great.
    But for the deployment pipeline, I would like to deploy the generated docker tag name based on the BuildNumber but actually it's not supported.

    When I set tag $(Release.Artifacts.App.Build.BuildId), the logs

    I can see in the logs:

    2018-11-12T16:21:37.3420228Z Updating App Service Application settings. Data: {"DOCKER_CUSTOM_IMAGE_NAME":"myregistry.azurecr.io/app:$(Release.Artifacts.Api.Build.BuildId)"}

    The variable is not resolved...

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
  20. How to run custom deployment steps when deploying to App Service for Linux

    Well I hope this is the write place to post this question.
    I came from: https://docs.microsoft.com/en-us/azure/app-service/containers/quickstart-nodejs

    I am trying to deploy a nodejs app to azure which has custom build steps.

    I would like the deployment to run:
    npm install
    npm build
    After it's deployed

    It seems it only runs `npm install --production` and then tries to run the file listed in the `main` field of package.json. Although the source is in typescript so I would need to compile it first.

    I saw here:
    https://github.com/projectkudu/kudu/wiki/Custom-Deployment-Script

    That you can add a `.deployment` file to call `deploy.cmd` file which will execute commands.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Deployment  ·  Flag idea as inappropriate…  ·  Admin →
← Previous 1
  • Don't see your idea?

Web Apps

Feedback and Knowledge Base