European Windows 2012 Hosting BLOG

BLOG about Windows 2012 Hosting and SQL 2012 Hosting - Dedicated to European Windows Hosting Customer

European WebMatrix Hosting - Amsterdam :: How does Web Deployment with VS 10 & MSDeploy Work?

clock February 28, 2012 06:21 by author Administrator

In VS 10 we use MSDeploy behind the scenes to deploy your entire web application along with all of its dependencies like IIS Settings, DB, web content etc to any destination server.

MSDeploy is a new technology specially designed to serve the purpose of deploying web applications seamlessly across IIS Servers. My hope is to give you a CONCEPTUAL high level overview to understand how web deployment with VS10 & MSDeploy really works.

In case of web deployment or replication across server farms what you really require is to take the web and its dependencies from one box to another. To further over simplify there is a source (your dev box) and there is a destination (your web server), the source needs to be replicated on to the destination and that is what we are trying to achieve (with of course a lot more details behind the scene :-)

MSDeploy uses this simple concept of taking the source and applying it on to the destination. Let us try to understand what all are possible sources:

Source:

-
If you want to deploy the site you are developing on your dev box then now the site you are developing on the dev box becomes the source.
-
If you have your web content stored in the source control and you have a build server which is set up for automatic deployment then the build server becomes the source.
-
If you have a MSDeploy web package given to you by someone and you are trying to install it on your dev box then the web package becomes the source.

Destination:

-
If you are deploying a web to a test server then the test server is the destination.
-
If you are creating a web package out of your web site using MSDeploy then the web package becomes the destination.
-
If you are deploying to your own dev box for testing purposes then in this case your dev box itself becomes the destination.

Well the concepts of source and destination are pretty simple but the reason why they are so interesting is because when you set up your deployment settings in Visual Studio then VS creates something that we call as Source Manifest and feeds to MSDeploy. Check out the figure below which gives you an idea of how VS 10 will produce your web package:



Source Manifest is a simple XML which instructs MSDeploy on what all Providers to invoke on the source machine. So what is a MSDeploy Provider?

A MSDeploy provider is a simple object which MSDeploy engine invokes to do two major CONCEPTUAL tasks:

1. On Source Machine to GET the right content from its place

e.g. if you had Database attached to your web then at source DB Provider will be called to pull out your data and schema and convert it into SQL Scripts which will then go into the web package.

2. On Destination Machine to PUT the right content in its place

e.g. if there were SQL scripts in your web package then at destination DB Provider will be called to run the SQL command and the SQL scripts to create and set up the database

MSDeploy comes with a lot of pre-built providers like:

-
IIS Settings providers for IIS 5.1 (for XP), IIS 6.0 (for Win2K3) & IIS 7.0(for Vista & Win2K8)
-
DB Provider for MS SQL Server
-
GAC
-
COM
-
Registry
-
etc etc

Based on your project settings Visual Studio creates a source manifest which is fed to MSDeploy to create package or deploy your web application. So on the source box below is how MSDeploy works:



Along with creating the source manifest, Visual Studio also creates destination manifest for you. Check the below diagram:



When you are ready to deploy then on the destination you can feed the web package and the destination manifest to MSDeploy to deploy your web site. In the destination manifest you can change the values like “IIS Application Name”, “DB connection strings” etc.



This is how you can use web packages on any machine with MSDeploy and by configuring your deployment options in the destination manifest you can go and and easily recreate your webs.

It is not possible for someone to come up with every possible provider that everyone needs so there will be an extensibility model by which you can write your own providers and register it with MSDeploy engine.

Visual Studio is also made extensible to allow you to hook into the packaging and publishing process to call your custom MSDeploy providers in the source manifest.

The most interesting pieces is that with IIS Manager and Visual Studio 2010 UI, you will not really need to know all these details, things will just work but I thought it is often interesting to know how things work behind the scenes.

I hope this conceptual overview helps you get the perspective on how web deployment with VS 2010 and MSDeploy will work!!

 



European WebMatrix Hosting - Amsterdam :: Error Message When Use WebDeploy

clock February 22, 2012 05:35 by author Scott

This is an error message that sometimes you might see when you published your site with WebDeploy. Yeah, we know WebDeploy sometimes is hard and not so easy as you think, but if you have problem with your current provider, you can consider our hosting plan. We support WebDeploy and we are Microsoft certified partner. Ok, let’s go to the problem:

“Error: An unsupported response was received. The response header ‘MSDeploy.Response’ was ” but ‘v1′ was expected.
Error: The remote server returned an error: (401) Unauthorized.”

This means that you do not have access. So, you need to create ticket to us and then we will set a username and password for your both your web deploy and remote IIS user.

Maybe you find another problem like this:


Error: The remote server returned an error: (503) Server Unavailable. Web Deploy may not be setup or running on that server. Please contact us in order to resolve the issue.

An error occurred when the request was processed on the remote computer.
The server experienced an issue processing the request. Contact the server administrator for more information.


This is the most common error we see and, unfortunately, it does not tell you much. What this means is that, usually, you have successfully connected to the server, however for some reason your deployment failed. Usually, this means that you are attempting to do something that you do not have access to do (such as deploying to the root directory – which you need full control permissions in order to do and this must be granted by us). Please check your settings and ensure that everything is correct. Also, if you do contact us, providing a screenshot of your deployment settings (Service URL, Site/Application and Username/Password) will assist us in troubleshooting your issue.

Lastly, I want to talk about the SetAcl deployment handler. Once you decide to publish to your root directory you can do some damage by removing the permissions from your files/folders if you aren’t careful. In order to fix this each file/folder must be reclaimed and the permissions reset, which is quite a bit of work and very time consuming for us.

SetAcl can be found in your WAP project file.

What is SetAcl?
It’s a provider that lets you set permissions on file system objects. Typically, this involves setting permissions on a sub-folder of your application, such as App_Data.

Let’s say you run this command:

msdeploy.exe -verb:sync -source:setacl -dest:setacl="Default Web Site",setacluser=ApplicationPoolIdentity,setaclaccess=Read

This command will give the ApplicationPoolIdentity Read access to the App_Data folder. Before it does that, however, it will clear existing permissions on the folder for the identity. This makes sense, since setAcl has to set the correct permissions and the only way to do that is to clear existing permissions for the identity. For example, if the ApplicationPoolIdentity had Read,Execute permissions before, now it will just have Read permissions.

In order to disable it, you edit the .csproj file and set:

1. <IncludeSetAclProviderOnDestination>False</IncludeSetAclProviderOnDestination>

or do this from the command line:

2. msbuild.exe myproject.csproj /p:IncludeSetAclProviderOnDestination=False

Following the above instructions will allow you to safely deploy to the root directory.

Hope this article will help you if you find problem like above.



European WebMatrix Hosting - Amsterdam :: How to Enable Xdebug in WebMatrix

clock February 14, 2012 06:41 by author Scott

Xdebug is a very popular PHP extension that helps with debugging and profiling of PHP scripts by providing a lot of valuable debug information. Microsoft WebMatrix is a development tool for building web applications. When WebMatrix is used to build or modify a PHP-based web application the debugging tasks can be greatly simplified if Xdebug extension is used. This post explains how to install and use Xdebug extension with WebMatrix.

Step 1: Enable PHP in WebMatrix from the site “Settings” page:



Note that if you installed any of the PHP applications from the Application Gallery then PHP will be automatically enabled.

Step 2: Download the appropriate build of Xdebug extension from downloads page.
If your site uses PHP 5.2 then download “5.2 VC6 Non-thread safe (32 bit)”. If your site uses PHP 5.3 then download “5.3 VC9 Non-thread safe (32 bit)”. Use 32 bit build even if your Windows OS is 64 bit.

Step 3: Install the extension by copying the downloaded file to the following locations:

-          For PHP 5.2 on Windows 64 bit:
C:\Program Files (x86)\IIS Express\PHP\v5.2\ext\

-          For PHP 5.2 on Windows 32 bit:
C:\Program Files\IIS Express\PHP\v5.2\ext\

-          For PHP 5.3 on Windows 64 bit:
C:\Program Files (x86)\IIS Express\PHP\v5.3\ext\

-          For PHP 5.3 on Windows 32 bit:
C:\Program Files\IIS Express\PHP\v5.3\ext\

Step 4: Open the php.ini file located in the PHP installation folder, e.g.
C:\Program Files\IIS Express\PHP\v5.2\php.ini and append the following at the end (make sure that the absolute path is correct for your version of PHP and Windows.):

[xdebug] 
zend_extension = C:\Program Files\iis express\PHP\v5.2\ext\php_xdebug-2.1.0-5.2-vc6-nts.dll

Step 5: Configure PHP to display errors by changing these PHP settings in php.ini file:


display_errors = On  
error_reporting = E_ALL & ~E_NOTICE 

Step 6: Test that extension is enabled and works by either calling a phpinfo() function from a script or by running a buggy script:



The Xdebug extension provides a lot of useful features that help with debugging of PHP applications. You can learn more about them from the
Xdebug documentation. For example you can use it to profile a PHP application. Just change the php.ini file as shown below and then make a request to a PHP script:

[xdebug] 
zend_extension = C:\Program Files\iis express\PHP\v5.2\ext\php_xdebug-2.1.0-5.2-vc6-nts.dll  
xdebug.profiler_enable = On  
xdebug.profiler_output_dir = C:\Windows\temp
 

The profile log will be saved into the specified directory and will have a name cachegrind.out.* Use
WinCacheGrind to open and analyze it:



European Windows Hosting - Amsterdam :: How to Connect Site via IIS Manager

clock February 14, 2012 05:48 by author Scott

I was about to blog how we can redirect domain.com to www.domain.com (redirecting can improve SEO ranking, tune to next post for more detail) in IIS 7. But before that I thought let me first blog how to connect with remote website through IIS manager. Before proceeding with this tutorial we need to download IIS Manager for Remote Administration and of course windows hosting account which allow remote IIS management. After installing IIS Manager for Remote Administration open IIS Manager by typing inetmgr in Run window. In connection pane of IIS manager click on Create New Connection button. There are three different options. Click on Connect to a Site



It will open new dialog box for connecting to remote website. In that dialog box enter server name and website name (which can be obtained from hosting control panel or contact hosting provider).



Clicking on next will ask for credentials for connecting to website.



After providing credentials when you click next, you might get server certificate alert depends on connecting server certificate. If you get one then click on connect if you trust connecting server.



On successful connection, it will ask for connection name. Provide connection name and click on finish button.



On connection, you might get following dialog asking to install server feature. This is the list of server feature which is not available on your local machine. If you want to manage / configure that feature through remote IIS then you must install it on your local machine.



After that you can see list of IIS feature available. Now you can configure it.



Done. Great job.



Europe WordPress Hosting - Amsterdam :: How to Import an External Blog into WordPress

clock February 7, 2012 07:38 by author Scott

There are multiple instances when bloggers opt for third party hosted, external blogging systems such as Blogspot.com, LiveJournal, TypePad etc. for carrying out the blogging activity. This may be due to many reasons, more commonly due to lack of funds and limited knowledge about hosting. In this article, I will show you how to import a blogspot.com to wordpress. If you need wordpress hosting, please visit our site at http://www.hostforlife.eu.

1. Login to your administrator area

2. Go to tools
à
Import

3. Choose the appropriate website from which you wish to Import the data.



4. Login to your Google Blogspot.com account.



5. Now you need to Authorize the transfer process, by granting access to WordPress. Hit the “Grant Access” tab to proceed further.



6. Incase you have multiple blogs within the Blogger account, all would be listed in the window. Select the “Import” option shown in front of the one you wish to migrate over to WordPress.



7. Now you need to map the author since there are different usernames in Blogger and WordPress.



Press Release - Premier European HostForLIFE.eu Launches Silverlight 5 Hosting

clock February 3, 2012 07:02 by author Scott

HostForLIFE.eu was established to cater to an under served market in the hosting industry; web hosting for customers who want excellent service. HostForLIFE.eu – a cheap, constant uptime, excellent customer service, quality, and also reliable hosting provider in advanced Windows and ASP.NET technology. We proudly announces the availability of the Silverlight 5 hosting in our entire servers environment.

You can start hosting your ASP.NET MVC 3 site on our environment from as just low €3.00/month only. For more information about our new product, please visit our site at
http://www.hostforlife.eu/Silverlight-5-European-Hosting.aspx.

“Today, we are really happy to announce the release of Silverlight 5 on our hosting environment. Silverlight 5 is part of a rich offering of technologies from Microsoft helping developers deliver applications for the web, desktop, and mobile devices. I personally would like to thank the people who have assisted in completing this project.” Said CEO of HostForLIFE.eu, Anthony Johnson.

“Silverlight 5 delivers great features that allow hardware H.264 decoding, adapting it better for video content. It also sports an improved graphics stack with 3D support, using the  XNA API.  This makes Silverlight 5 a more mature and capable platform for developing rich internet application.” Said John Curtis, VP Marketing and Business Development at HostForLIFE.eu. “We believe that our Silverlight 5 provide great opportunity to web developers.”

Silverlight 5 also includes the following developer related enhancements:

- XAML Debugging with breakpoints for binding debugging
- Implicit data templates for easy UI reuse
- Double (and multi) click support
- GPU-accelerated XNA-compatible 3D and immediate-mode 2D API
- Low-latency sound effects and WAV support
- Real operating system windows and multi-display support
- Significant performance improvements, fixes and much more

For complete information about this new product, please visit our official site at
http://www.hostforlife.eu.

About us:

We are European Windows Hosting Provider which FOCUS in Windows Platform ONLY. We support Microsoft technology, such as the latest ASP.NET 4, ASP.NET MVC 3, SQL 2008/2008 R2, and much more.

Our number one goal is constant uptime. Our data center uses cutting edge technology, processes, and equipment. We have one of the best up time reputations in the industry.

Our second goal is providing excellent customer service. Our technical management structure is headed by professionals who have been in the industry since it's inception. We have customers from around the globe, spread across every continent. We serve the hosting needs of the business and professional, government and nonprofit, entertainment and personal use market segments



European Amsterdam Windows Hosting :: How to Solve - The SMTP server requires a secure connection or the client was not authenticated

clock February 3, 2012 04:13 by author Scott

Today I will show you how to solve problem in send message when you host with hosting provider. This is the error message:

The SMTP server requires a secure connection or the client was not authenticated. The server response was: host5.vdconline.vn ESMTP MailEnable Service, Version: 5.51-- denied access at 02/03/12 02:45:26

Please try this solution below:

Public Shared Sub SendEmail(  


    Dim Message As New Net.Mail.MailMessage() 

    Dim FromEmail As New Net.Mail.MailAddress(“From Email Address”)
    Message.From = FromEmail
    Message.To.Add(“To Email Address”)  


    Message.Subject = “Subject of the Email”
    Message.Body = “Body of the Email”
    ‘Message.SubjectEncoding = System.Text.Encoding.UTF8
    ‘Message.BodyEncoding = System.Text.Encoding.UTF8
    ‘Message.IsBodyHtml = False
    ‘Message.Priority = Net.Mail.MailPriority.High 

    Dim SmtpClient As New Net.Mail.SmtpClient(“smtp.YourEmailServer.com”, PortNo eg: 587 for gmail )
    SmtpClient.EnableSsl = True
    ‘smtp.DeliveryMethod = Net.Mail.SmtpDeliveryMethod.Network
    ‘smtp.UseDefaultCredentials = False 

SmtpClient.Credentials = New Net.NetworkCredential(“YourEmailAddress”, “YourEmailPassword”

    SmtpClient.Send(Message)  


End Sub

Note: An important point to note is that you have to set the EnableSSl to True before you set the NetWork Credentials of your SMTP client.



About HostForLIFE.eu

HostForLIFE.eu is European Windows Hosting Provider which focuses on Windows Platform only. We deliver on-demand hosting solutions including Shared hosting, Reseller Hosting, Cloud Hosting, Dedicated Servers, and IT as a Service for companies of all sizes.

We have offered the latest Windows 2012 Hosting, ASP.NET 4.5 Hosting, ASP.NET MVC 5 Hosting, SQL 2014 Hosting and SQL 2014 Hosting.

Tag cloud

Sign in