ERROR_SMO_NEEDED_FOR_SQL_PROVIDER when I'm trying to Web Deploy - web

When I try to publish project from Visual Studio 2019 to remote IIS server, I'm getting an error:
"The SQL provider cannot run because of a missing dependency. Please make sure that Microsoft SQL Server Management Objects (Version 10 or higher) is installed. Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_SMO_NEEDED_FOR_SQL_PROVIDER".
This is the first time I installing software to server, so here is what I did, following instructions on the web:
Added features: Windows Deployment Services (with Deployment Server and Transport Server), IIS Management Console, IIS Management Scripts and Tools, Management Service, Logging Tools.
Installed SQL Server Management Objects (version 13.0.1601.5), Microsoft Web Deploy 3.6 (because of version 4.0 won't offer me to install IIS Deployment Handler and won't show me Deploy menu in the IIS).
Tried to configure Web Deploy Publishing for existing user from Active Directory with defining connection string to SQL server.
Allowed users in IIS Manager Permissions.
Some important information:
Server is in domain, connection to internet restricted. Application works in intranet.
Using Web Platform Installer permitted because of item 1. Any programs should be installed offline only.
Server haven't been used for Web Deploy before.
Before installing Microsoft Web Deploy 3.6, I was unable to check connection from Visual Studio and even hadn't current error.
I guess that error happens because of incorrect connnection strings (Enter SQL Server/MySQL connection string to be used for publishing).

Related

Web deployment task failed - Issue when connecting to remote server from local machine

I was trying to publish a web application to remote server (amazon windows server 2012) using Visual Studio 2012. Following is the error I am getting.
Web deployment task failed. (Could not connect to the remote computer ("amazon-server-name"). On the remote computer, make sure that Web Deploy is installed and that the required process ("Web Management Service") is started.
I did go through several articles mentioning this issue. Also both the web management service and web deployment agent service is running on remote machine. Also in IIS’s management service part I did enable the remote connection. When try to deploy a website from server machine itself, it’s working. But from my local machine to windows server it’s showing error like cannot connect to remote server. Anyone has any clue on how to solve this issue?
Note: Microsoft Web Deploy tool 3.5 is running on both server and the local machine.
Looking forward.
What happens when you try just using FTP in Visual Studio? You mentioned "web project", I know some Visual Studio things are iffy with connecting to web servers. Just try a simple FTP into the server, then you should be able to save/test/deploy projects and files that way.
If you're still having problems, there's just an unlimited amount of problems that could cause this (hence why I don't work on Windows servers anymore). Could be ports, firewalls, security settings, folder permissions, user privileges, any combination of things. Good luck.

Web Deploy unable to validate connection

I am trying to learn how to setup Web Deploy functionality on both sides Server and host/client computer. Created a Windows Server 2012 Web Server in Hyper-V and able to access default web page in host/client computer. On server installed Web Maintenance Service, Web Deploy 3.5 and performed all the required steps e.g. "Configure Web Deploy Publishing" and added Administrator to IIS Manager Permission for the website in IIS. I disabled Firewall totally to make it work for the first time.
On client computer I created a dummy MVC Application in Visual Studio and trying to create publish profile for this app. As soon as I hit the Validate Connection I got the option to receive and save the security certificate from server but after that in gives me following warning (snapshot):
Tried doing all the steps all over but no luck.
I am open to all feedback. Thanks in advance.
Found the solution. Instead of adding publish information manually, I am suppose to use publishsetting file generated in server through "Configure Web Deploy Publishing" feature of IIS. Server address ends with file name which ends with .axd

ODBC or OleDB database drivers under Azure App Service

I'm investigating what's involved in deploying an ASP.NET MVC web application to Azure as an App Service, using Web Deploy from Visual Studio 2015.
The MVC web application uses SQL Server for the identity database in the standard fashion, so I can see how to point that at an Azure-hosted database server.
In addition, it has some 'legacy' data in DBF files in the App_Data folder, accessed on my development PC via OLEDB.
This scenario is obviously going to fail on deployment because whatever box(es) the site ends up hosted on won't have this OLEDB driver installed.
Is this a complete non-runner or is there some way of installing the driver?
One possibility is to use Windows Containers on Azure App Service in which you have control over what drivers or custom software to install.
Please check the quick start to run a Windows Container in App Service:
https://learn.microsoft.com/en-us/azure/app-service/app-service-web-get-started-windows-container
You can't install ODBC or OleDB drivers when using App Service, you need to look at Virtual Machines.

Web Deploy from Visual Studio 2012 to a remote IIS 8 server

I have a remote Windows 2012 server running IIS 8 from which I am hosting a web application. My local development box is running Visual Studio 2012. Currently I am publishing my app as a web deployment package (.zip), RDP'ing to the production server, copy + pasting to a folder and deploying the application from within IIS. My question is, what changes do I need to make to deploy directly to IIS from Visual Studio 2012 using the web deploy option?
I have tried to follow this guide but it refers to a service URL which I must obtain from my hosting company. I don't have a hosting company, my server is co-located.
I am presented with the following options:
Is the username and password the one I use for the RDP account? I already have Web Deploy 3.0 installed on IIS do I need to enable further settings?
OK I found the solution but it took me a whole day to get it working! Basically the steps are as follows. This is very sketchy but see the detailed guides below which helped me.
Enable the IIS Web Management role feature.
Install Web Deploy 3.0 (or higher). Make sure to customise the install to include the handlers (See notes below). If you're not presented with this option go to add/remove programs, find webdeploy, right click and select "change" option.
In IIS click on the server node and find the "Management Service" icon. Enable remote access and configure a dedicated IIS User for remote deployment (These will be the credentials that will go in the user name and password boxes).
At the site level in IIS assign this user to manage the website.
Make sure port 8172 is open on the web server (you can check this port here).
Try reconnecting from Visual Studio. There was some trial and error here for me but the error messages do link to a MS guide for decoding :)
Even after connecting successfully I had to wrangle with permissions, so my IIS user had sufficient privileges to create the app pool, directories and general file management jobs.
The following links really helped!
Configuring the handler on the web server:
http://www.iis.net/learn/publish/using-web-deploy/configure-the-web-deployment-handler
Connecting via Visual Studio:
http://msdn.microsoft.com/en-us/library/dd465337(v=vs.110).aspx
NOTES:
To ensure the handler is running, login into your IIS server and point your browser to the following URL.
https://<servername>:8172/MsDeploy.axd
F12 to open up the dev tools to see the HTTP response. Also MsDeploy also creates IIS logs in inetpub/logs which should give you some clue if you're having connectivity problems.
I had the same problem and this post was very useful to help me solve the issue. I had anyhow serious troubles while trying to install Web Deploy on my Windows Server 2012. The installation of Web Deploy 3.0 was giving me several errors and it couldn't be completed.
I tried to solve the problem installing "Microsoft Web Platform Installer 5.0" from http://www.microsoft.com/web/downloads/platform.aspx but it didn't solve it.
I thought it was due to Firewall Settings, Authorizations issues, Users without permissions or something like that. Finally I found out it wasn't due to any of the mentioned reasons.
I found the most simple solution and I hope it will help other users too: it was enough to download Web Deploy 3.5 installation directly from Microsoft Website:
http://www.microsoft.com/en-us/download/details.aspx?id=39277
This may sound banal but it solved it. I was able to install "Web Management Service" but not the second needed IIS service "Web Deployment Agent Service".

Disparity in options available in Web Deploy 2.0 on two matching servers

IIS 7.5 is installed on two servers (both Windows Server 2008 R2) with Web Deploy 2.0 installed (to enable me to Publish from Visual Studio 2010.) Publishing straight from VS requires the Web Management Service be running on the server. I've been publishing to the first server for months, no problem. The second server has just been spun up (not by me) but as far as I can tell has all the same versions of components (OS, IIS, Web Deploy). However, on the second server the Web Management Service isn't installed. There's a key difference:
Web Deploy 2.0 options available on the first server:
Web Deploy 2.0 options available on the second server:
Why is there a difference between the two?
(Follow-up: I tried the Web Deploy 3.0 installer and encountered the exact same dialog as the second server, above, except that it said "3.0" instead of "2.0".)
Verify the proper IIS roles are installed on your new server. In the Server Manager console, under Web Server (IIS), verify the following roles are installed:
Management Tools
IIS Management Console
IIS Management Scripts and Tools
Management Service
Then try re-running your Web Deploy installer. I think you'll find you get the options you desire.

Resources