Azure App and Services and IdentityServer4 - azure

I have a situation where I have a React Web App and two REST services using Identity4 Server.
Problem is that these work well locally in my Workstation but if I deploy these three parts into Azure they will not work.
I have Azure SQL Database containing all Databases and tables it needs. Locally I use my local Database. So, Database is not the problem. It's deployed in same way with Azures manner.
My question is that how should I configure a React Web App using Identity4 Server with REST services?
I thing that Azure needs some kind of proper configuration but dont't know what.
I also have read Identity4 Server's documention pages but haven't found anything there that would help mr installing it into Azure.
Can anyone help me with this issue? thanks
Br
Mike

One error is HTTP 401 Unauthorized error

Related

how to run a node server in an azure virtual machine permanently?

I build a web based mobile app (using react), which I'm hosting as an Azure Web app. This website is connected to a node server, which I'm hosting using a azure virtual machine (I don't know if this is the best approach, maybe I should host this as a webapp instead of VM ?).
I'm still new to this strategie of developing a web based mobile app and connecting it to a hosted backend in the cloud so I apologize if this is a trivial question.
I'm using websockets to connect my frontend to the node server and then I consume messages. I don't have a database it is a simple application.
The steps I'm doing to run the app are:
I connect to the Azure VM from my laptop with ssh
run my server using node server.js
When the server is runing, I can refresh my website and everything works fine
Now, the problem is that I want the node server to run all the time. However, I noticed that the server stops running when I deconnect (ssh) my laptop from the virtual machine. So I find myself doing these steps (connecting to the VM with ssh and running the server manually) each time I want to use the app.
Is there a way to do this so that the node server runs all the time without stoping? Also since I'm new to this, is this the right way to deploy frontend and backend? I assume I can't deploy both frontend and backend in the same Azure webapp or am I wrong?
(Since part of your question is around "Is there a better way?", I would answer that instead of fixing the issue in your current VM hosting :)).
To take full advantage of cloud for your applications, PaaS is always preferred over IaaS. In this case, unless you have any specific reason, you should deploy your backend Node app in another App Service (aka Web App). Or you can consider Azure Function also if your node app has a small set of APIs, but it will require code update. Both support multiple platforms including node.js. Since you mentioned you are leveraging Web App for your react mobile app, so I hope you are already bit familiar with it. Also since Azure Function would require code change, so Web App is preferred this case.
Note: I omitted other solutions like AKS, Service Fabric etc. for now, since currently we are talking about the problem of deploying only a single app, for which those will be overkill at this moment.
Also, to your point
I assume I can't deploy both frontend and backend in the same Azure webapp or am I wrong?
Yes technically you can, depending on your scenario by "bundling" into a single app if both are in same platform (like Node in this case). Though whether one should do that would be an opinionated answer. But even if you keep those separate, you can still leverage single App Service Plan for cost saving. So keeping separate like you have now is what I would suggest to maintain "separation of concern".

How to make an API accessible all the time and not just when the project is executed?

I am making my first mobile app using Xamarin.Forms and FreshMVVM as the architecture and I want this app to get info off my SQL database (which is located in azure) by calling an API Rest. I already know how to develop an Api, and all the SQL and Azure related stuff, as well as how to get info from my API.
But what I don't know is how to access this API when the project in which is created is not executed, in other words, I don't know how to make my API Rest accessible all the time, so the App can access to it whenever is needed.
How do you do this?
Thank you all for your time, hope you have a good day.
You need to publish the API to a web host. Azure App Services. AWS. Digital Ocean VM running a web server. Possibly GoDaddy, though I have never used them. Your own server.

Azure : Deploy Angular(Front-End) & Node (Back-End) app without VM

I am new to Azure. I have never used azure. So don't mind if this is some silly question.
I have a client who also doesn't know much about deploying.
I have angular/node apps. He wants to host on Azure WITHOUT using a VM.
I am not sure about azure. So i don't know how to deploy without VM.
I know to deploy with RDP(Remote Desktop).
Can anyone help me with this. Is there a way to deploy angular & node app without VM?
Is there any specific documentation for it? Which services will i need in Azure?
Thanks in advance!
Except Azure VM, there are normally two ways to deploy Node.js app on Azure which include App Service - Web Apps and Web Apps for Containers, please see the links below to know these guides.
For deploying Node.js app on Azure Web Apps.
Create a Node.js web app in Azure
Tutorial: Build a Node.js and MongoDB web app in Azure
To deploy the app with a ZIP file, or via FTP, cloud sync, or deploy continuously, or from local Git, etc. You can see more at the left sidebar of these pages.
For deploying Node.js app on Azure Web App for Containers, it's a simple way to deploy the app on Azure as similiar as on local docker.
Create a Node.js web app in Azure App Service on Linux
Build a Node.js and MongoDB web app in Azure App Service on Linux
To deploy via FTP, cloud sync, or deploy continuously, or from local git, etc. Also, you can see more at the left sidebar of these pages.
Some important tools will help deploying easier.
Deploy via VSCode, you can refer to these offical documents for WebApp(App Services) or Container(Docker Images).
To deploy on WebApp not Container, Kudu is a common tool for debuging and deployment. Meanwhile, for Node.js app, we need to use iisnode to connect IIS as revese proxy for your app, and configure the web.config file via follow the kudu wiki document. The Kudu wiki is very useful and valuable for new to Azure.
There are more details for this topic which can not be listed one by one at here, but the above these are necessary. The offical guide for Javascript developers is helpful for new to Azure.
Jay Gong posted a great answer for hosting on Azure. However, you might want to ask your client if s/he means s/he wants a micro services architecture. For more information on micro services, check out this link.
The other viable option would be an App Service (which is an Azure service that manages deployment and abstracts a lot away, but there's a VM under the hood)? Without a VM for hosting, it would be rather difficult to do anything in the cloud on Azure - the only other option is local hosting, which would be without Azure. I would argue that it ruins the purpose of using cloud services, as it seems your client is confused.

IIS binding migration azure

We are trying to migrate our ASP.NET web apps to an Azure VM. We have about 5 apps under our website, but we need to do these one by one. The problem is when we migrate one app to an Azure VM IIS, we need to maintain the URL and not disturb the 4 remaining web apps. Below is an image better explaining what I need to do:
See Image
Notice I need to maintain the original URL (https://www.site1.com/App1-1) when moved to the Azure VM. We had thought about doing a reverse proxy for that one app, but I think that would put too much extra traffic going back and forth.
I know this is probably not the best way of migrating things to Azure. Refactoring the app is slated for the future. This is a "lift and shift" interim solution. Any suggestions or tips would be greatly appreciated!
You can do something like:
Migrated the app to Azure VM and test it first to confirm it working
Configure the custom DNS entry to point to the app in Azure. You can read more here
https://learn.microsoft.com/en-in/azure/dns/dns-domain-delegation
Switch off the app from the local server once DNS entry in Azure is active.
Migrate other apps

Website giving 502 error for the past 6 hours

Seeing 502 error for the past 6 hours.
Tried restarting the server but it didn't do anything.
It is hosted on a VM (instead of being an Azure Web App).
Azure region: North Europe.
App Insights resource didn't report of any problem.
Website is written in mvc core.
What do I do to fix this?
If you have already tried the link suggested by DonNetMatt, then, here is what I would do.
You said you are hosting it in a VM. could you try redeploying the site to another server (web app or VM), and if possible another region. This should tell you if the issue is really with your web app or the server.
In all likelihood, the redeploy should load the site just fine, in which case contacting Azure support is the best way to solve this issue.
I doubt if the issue is on your code. With the error you are getting, its likely a server issue on Microsoft Azure side.
(Note : I am assuming when you say 'Website is writting in mvc core' you mean, website is written in mvc core. Or, is your website designed to write code as part of some automation thing, and generating MVC code?)

Resources