Best & Cheap Recommendation Kentico 9.0 Hosting

Kentico 9 is the newest release of Kentico Software, the Web Content and Customer Experience Management provider, which has released on November 24, 2015. Kentico 9 comes with several new collaboration features and e-commerce enhancements that make launching and managing digital marketing campaigns faster and easier than ever.

Kentico 9 allows anyone to quickly deliver the right marketing message at the right time on any digital channe. It’s easy to use, affordable, and quick to set up. With sophisticated personalization, segmentation and other capabilities, Kentico allows users to manage all their digital marketing efforts in a unified way across all their marketing tools from a single environment that can easily integrate with real-time CRM and ERP data for the highest level of personalization.

With improved campaign management and even faster website development possibilities, Kentico 9 lets you run highly optimized campaigns and deliver exceptional customer experiences all from one location. Now you have the power to improve and refine your digital strategy, align it with the needs of your customers, and create unique user experiences, bringing you closer to your customers.

Kentico is the only fully integrated ASP.NET CMS, E-commerce, and Online Marketing platform that allows you to create cutting-edge websites, and fully optimize your digital customers’ experiences across multiple channels. Kentico saves you time and resources so you can accomplish more.

Best and Cheap Recommended Kentico 9.0 Hosting

Host Intro
$1.00
$1.00/mo
Host 1 Site
1 GB Disk Space
10 GB Bandwidth
0 SQL Server db
SQL Server 2008/2012/2014
0 MB SQL Server / db
0 MySQL db
0 MB MySQL /db
0 MB Email Space
Dedicated Application Pool
Support UTF-8 Domains
30-Days Money Back Guarantee
More...
Host One
$5.00
$5.00/mo
Host Unlimited Sites
5 GB Disk Space
60 GB Bandwidth
2 SQL Server db
SQL Server 2008/2012/2014
200 MB SQL Server / db
3 MySQL db
200 MB MySQL /db
200 MB Email Space
Dedicated Application Pool
Support UTF-8 Domains
30-Days Money Back Guarantee
More...

ASPHostPortal.com will be the Best Company hosting in the industry, who use potent servers to serve their buyers. Their exclusive Speed Zone technology could accelerate the speed of one’s internet site and email fast by locating the information close to your location. They also have one particular of world very best client support team to help you out whenever you meet any hosting issue.They are ideal for Kentico 9.0 Hosting that are constructed for organizations.

ASPHostPortal’s Kentico 9.0 hosting packages are proving really common for 2016. ASPHostPortal.com Kentico 9.0 Hosting optimized hosting infrastructure attributes independent email, web, database, DNS and handle panel servers and lightning quickly servers guaranteeing your website loads super rapid! They are 100% fully support on windows platform. Their windows hosting is compatible with all the Kentico hosting management and collaboration application.

With their completely assistance on Microsoft Windows and ASP.NET, ASPHostPortal.com will be the very best selection to host your Kentico 9.0  Hosting. The following are a few of the factors why you must pick them as your Kentico 9.0  Hosting provider:

  • Best and Friendly Support
    Their support team is extremely fast and can help you with setting up and using Kentico 9.0 Hosting on your account. Their customer support will help you 24 hours a day, 7 days a week and 365 days a year.
  • Dedicated Application Pool
    With them, your site will be hosted using isolated application pool in order to meet maximum security standard and reliability.
  • Uptime & Support Guarantees
    They will not only provide you with a 30 days money back guarantee, but also give you a 99.9% uptime guarantee.
  • A Powerful User-Friendly Control Panel
    Their Control Panel provides the tools and utilities, which give you true control over your account and web pages.
  • Setup Installation
    They’ll get you up and running within 30 seconds of placing your order.

ASP.NET 4.5 Hosting :: Enabling Unobtrusive Validation From Scratch in ASP.NET 4.5 Webforms

asphostportalbanner-e1430121991200ASP.NET 4.5 Hosting :: Enabling Unobtrusive Validation From Scratch in ASP.NET 4.5 Webforms  – I used to be fiddling with ASP.NET 4.5 and Visual Studio 2012 particularly with all the new Validation attributes and i identified they function great, specially the new unobtrusive validation, then I attempted to permit this sort of validation over a new Vacant Net Software, and that i identified that this just isn’t out-of-the-box, you’ll need to create some configurations to your Net Application.

You’ll find a few ways to allow the unobtrusive validation over a Internet Software:
Through the web.config file
<configuration>
<appsettings>
<add key=”ValidationSettings:UnobtrusiveValidationMode” value=”WebForms”>
</add></appsettings>
</configuration>
Via the Global.asax file

protected void Application_Start(object sender, EventArgs e)
{
ValidationSettings.UnobtrusiveValidationMode = UnobtrusiveValidationMode.None;
}
On each page:

protected void Page_Load(object sender, EventArgs e)
{
this.UnobtrusiveValidationMode = System.Web.UI.UnobtrusiveValidationMode.WebForms;
}
To disable the unobtrusive validation set the UnobtrusiveValidationMode property to None. Unobtrusive validation is actually enabled by default in ASP.Net 4.5.

We’ll start with a simple example, create an Empty Web Application and add a MasterPage called Site.master and a content page for this master called Default.aspx.
Add the following code to the Default.aspx file:
<asp:TextBox runat=”server” ID=”txt” />
<asp:RequiredFieldValidator ErrorMessage=”txt is required” ControlToValidate=”txt” runat=”server” Text=”*” Display=”Dynamic” />
<asp:Button Text=”Send info” runat=”server” />
If you try to run a simple ASPX page using a validator, the following exception will be thrown:

“WebForms UnobtrusiveValidationMode requires a ScriptResourceMapping for ‘jquery’. Please add a ScriptResourceMapping named jquery(case-sensitive)”. Before fixing this, let’s disable the unobtrusive validation to see the result.

On the page:
protected void Page_Load(object sender, EventArgs e)
{
this.UnobtrusiveValidationMode = System.Web.UI.UnobtrusiveValidationMode.None;
}
Now run the page and the validation will work as it used to work in ASP.Net 4.0 If you examine the rendered HTML, you will see that the gross inline script is rendered:
<script type=”text/javascript”>
//<![CDATA[
var Page_Validators = new Array(document.getElementById(“ContentPlaceHolder1_ctl00″));
//]]>
</script>

<script type=”text/javascript”>
//<![CDATA[
var ContentPlaceHolder1_ctl00 = document.all ? document.all[“ContentPlaceHolder1_ctl00”] : document.getElementById(“ContentPlaceHolder1_ctl00”);
ContentPlaceHolder1_ctl00.controltovalidate = “ContentPlaceHolder1_txt”;
ContentPlaceHolder1_ctl00.errormessage = “txt is required”;
ContentPlaceHolder1_ctl00.display = “Dynamic”;
ContentPlaceHolder1_ctl00.evaluationfunction = “RequiredFieldValidatorEvaluateIsValid”;
ContentPlaceHolder1_ctl00.initialvalue = “”;
//]]>
</script>
<script type=”text/javascript”>
//<![CDATA[

var Page_ValidationActive = false;
if (typeof(ValidatorOnLoad) == “function”) {
ValidatorOnLoad();
}

function ValidatorOnSubmit() {
if (Page_ValidationActive) {
return ValidatorCommonOnSubmit();
}
else {
return true;
}
}

document.getElementById(‘ContentPlaceHolder1_ctl00’).dispose = function() {
Array.remove(Page_Validators, document.getElementById(‘ContentPlaceHolder1_ctl00’));
}
//]]>
</script>
Now let’s re-enable the unobtrusive validation. In order to fix the previous exception, we need to install the following Nuget packages: (I like to install jQuery first to get the latest version, although this is not required.)
jQuery
ASPNET.ScriptManager.jQuery
Microsoft.AspNet.ScriptManager.MSAjax
Microsoft.AspNet.ScriptManager.WebForms
At this point, if you run the application again, the exception will be gone =) how cool eh?. This is because the following Nuget packages automatically register the scripts needed with the ScriptManager control.

Let’s examine the code added by these Nuget packages using ILSpy:

AspNet.ScriptManager.jQuery
public static class PreApplicationStartCode
{
public static void Start()
{
string str = “1.8.1”;
ScriptManager.ScriptResourceMapping.AddDefinition(“jquery”, new ScriptResourceDefinition
{
Path = “~/Scripts/jquery-” + str + “.min.js”,
DebugPath = “~/Scripts/jquery-” + str + “.js”,
CdnPath = “http://ajax.aspnetcdn.com/ajax/jQuery/jquery-” + str + “.min.js”,
CdnDebugPath = “http://ajax.aspnetcdn.com/ajax/jQuery/jquery-” + str + “.js”,
CdnSupportsSecureConnection = true,
LoadSuccessExpression = “window.jQuery”
});
}
}
Microsoft.AspNet.ScriptManager.MSAjax
public static void Start()
{
ScriptManager.ScriptResourceMapping.AddDefinition(“MsAjaxBundle”, new ScriptResourceDefinition
{
Path = “~/bundles/MsAjaxJs”,
CdnPath = “http://ajax.aspnetcdn.com/ajax/4.5/6/MsAjaxBundle.js”,
LoadSuccessExpression = “window.Sys”,
CdnSupportsSecureConnection = true
});
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjax.js”, “window.Sys && Sys._Application && Sys.Observer”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxCore.js”, “window.Type && Sys.Observer”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxGlobalization.js”, “window.Sys && Sys.CultureInfo”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxSerialization.js”, “window.Sys && Sys.Serialization”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxComponentModel.js”, “window.Sys && Sys.CommandEventArgs”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxNetwork.js”, “window.Sys && Sys.Net && Sys.Net.WebRequestExecutor”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxHistory.js”, “window.Sys && Sys.HistoryEventArgs”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxWebServices.js”, “window.Sys && Sys.Net && Sys.Net.WebServiceProxy”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxTimer.js”, “window.Sys && Sys.UI && Sys.UI._Timer”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxWebForms.js”, “window.Sys && Sys.WebForms”);
PreApplicationStartCode.AddMsAjaxMapping(“MicrosoftAjaxApplicationServices.js”, “window.Sys && Sys.Services”);
}
private static void AddMsAjaxMapping(string name, string loadSuccessExpression)
{
ScriptManager.ScriptResourceMapping.AddDefinition(name, new ScriptResourceDefinition
{
Path = “~/Scripts/WebForms/MsAjax/” + name,
CdnPath = “http://ajax.aspnetcdn.com/ajax/4.5/6/” + name,
LoadSuccessExpression = loadSuccessExpression,
CdnSupportsSecureConnection = true
});
}
Microsoft.AspNet.ScriptManager.WebForms
public static void Start()
{
ScriptManager.ScriptResourceMapping.AddDefinition(“WebFormsBundle”, new ScriptResourceDefinition
{
Path = “~/bundles/WebFormsJs”,
CdnPath = “http://ajax.aspnetcdn.com/ajax/4.5/6/WebFormsBundle.js”,
LoadSuccessExpression = “window.WebForm_PostBackOptions”,
CdnSupportsSecureConnection = true
});
}
As you can see these Nuget packages automatically register the scripts using the ScriptManager object (besides installing the required JavaScript files)

Run the application and examine the rendered HTML. You will note that it’s much cleaner now, in this case the inline script has been moved to an external file that can be rendered using bundles to increase performance. The rendered script looks like:
<script src=”Scripts/WebForms/MsAjax/MicrosoftAjaxWebForms.js” type=”text/javascript”></script>
<script src=”Scripts/jquery-1.8.1.js” type=”text/javascript”></script>
Much better right?. Notice how ASP.Net used HTML5 custom attributes:
<input name=”ctl00$ContentPlaceHolder1$txt” type=”text” id=”ContentPlaceHolder1_txt” />
<span data-val-controltovalidate=”ContentPlaceHolder1_txt” data-val-errormessage=”txt is required” data-val-display=”Dynamic” id=”ContentPlaceHolder1_ctl00″ data-val=”true” data-val-evaluationfunction=”RequiredFieldValidatorEvaluateIsValid” data-val-initialvalue=”” style=”display:none;”>*</span>
<input type=”submit” name=”ctl00$ContentPlaceHolder1$ctl01″ value=”Send info” onclick=”javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ContentPlaceHolder1$ctl01&quot;, &quot;&quot;, true, &quot;&quot;, &quot;&quot;, false, false))” />
The data-val-* are custom attributes used by the unobtrusive validation engine

If you click the button to trigger the validation you will be pleased to see that it works as expected…but we are not done yet =/

The settings we have applied won’t work if you intend to use an UpdatePanel control (yeah the evil UpdatePanel again…). This is because this control requires a ScriptManager control on the page (or MasterPage) and we do not have any yet. So let’s add a simple ScriptManager control to the master page and see what happens. Add the following code to the Site.master page right under the <form…
<asp:ScriptManager runat=”server” ID=”scriptManager”>
</asp:ScriptManager>
Run the page again and fire the validation… oops… the client validation has gone =( We only have server validation. I’m not sure why this happens but my best guess is that the just added ScriptManager control is overriding our code settings.

To fix it, change the declaration of the ScriptManager control on the Site.master page to:
<asp:ScriptManager runat=”server” ID=”scriptManager1″>
<Scripts>
<asp:ScriptReference Name=”MsAjaxBundle” />
<asp:ScriptReference Name=”jquery” />
<asp:ScriptReference Name=”WebForms.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/WebForms.js” />
<asp:ScriptReference Name=”WebUIValidation.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/WebUIValidation.js” />
<asp:ScriptReference Name=”MenuStandards.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/MenuStandards.js” />
<asp:ScriptReference Name=”GridView.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/GridView.js” />
<asp:ScriptReference Name=”DetailsView.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/DetailsView.js” />
<asp:ScriptReference Name=”TreeView.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/TreeView.js” />
<asp:ScriptReference Name=”WebParts.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/WebParts.js” />
<asp:ScriptReference Name=”Focus.js” Assembly=”System.Web” Path=”~/Scripts/WebForms/Focus.js” />
<asp:ScriptReference Name=”WebFormsBundle” />
</Scripts>
</asp:ScriptManager>
Run the application and our little example will work again as expected

Sadly these new settings are the equivalent to the settings added by code and we need to add them to be able to use the traditional Microsoft AJAX controls.

There’s one last thing we need to configure, this is because there’s actually a bug with the ValidationSummary control.

To test it, update the Default.aspx page as follows:
<asp:ValidationSummary ID=”ValidationSummary1″ runat=”server” />

<asp:TextBox runat=”server” ID=”txt” />
<asp:RequiredFieldValidator ErrorMessage=”txt is required” ControlToValidate=”txt” runat=”server” Text=”*” Display=”Dynamic” />
<asp:Button Text=”Send info” runat=”server” />
Now run the page again, scroll down until you can see the button and click it… woot your page jumped to the top… the workaround to solve this little bug is to add the following code to the Site.master
<script>
window.scrollTo = function () {

};
</script>

asphostportal-icon-e1421832425840-120x120-e1424663413602ASPHostPortal.com is Microsoft No #1 Recommended Windows and ASP.NET Spotlight Hosting Partner in United States. Microsoft presents this award to ASPHostPortal.com for the ability to support the latest Microsoft and ASP.NET technology, such as: WebMatrix, WebDeploy, Visual Studio 2015, .NET 5/ASP.NET 4.6, ASP.NET MVC 6.0/5.2, Silverlight 6 and Visual Studio Lightswitch. Click here for more information

Best & Cheap mojoPortal 2.4.1.0 Hosting Recommendation

Best & Cheap mojoPortal 2.4.1.0 Hosting Recommendation

Best & Cheap mojoPortal 2.4.1.0 Hosting Recommendation : mojoPortal is an open source, cross-platform, content management system (CMS) for ASP.NET which is written in the C# programming language. The CMS supports plugins and has built-in support for, among others, forums, blogs, event calendars, photo galleries, and an e-commerce feature. The project was awarded an Open Source Content Management System Awardby Packt in 2007 saying that the “ease of use, set of relevant tools and plugins and also the fact that it is cross platform, made it stand out above the rest”.

As you may know there is a new web stack coming from Microsoft, ASP.NET Core and .NET Core. These are currently in preview and should be released early in 2016. .NET Core framework is a new light weight cross platform version of .NET that will be supported by Microsoft on Windows, Linux, and Mac. ASP.NET Core is the unification of previous MVC concepts with those of Web API. These new frameworks and tools are going to really modernize the way we develop web applications and sites.

What is New in MojoPortal 2.4.1.0?

  • Upgrade to AjaxControlToolkit v16.1
  • Upgrade to newer, more user friendly recaptcha
  • Update to the new preferred endpoint for Authorize.NET
  • Various minor bug fixes

Why choose MojoPortal 2.4.1.0 Hosting for Your Site?

Here are several reason why use MojoPortal hosting

mojoPortal isn’t just a CMS

It’s an open-source platform that can be extended to meet the needs of your users. If your users have a specific need for functionality that isn’t available “out of the box”, mojoPortal’s extensive open-source framework is easy to add functionality to. For developers, there’s an extensive video tutorial section that will guide you through best practices in creating a custom feature; in addition, there’s a great group of developers who’re willing to help answer questions so that you can provide a top-notch solution for your users.

Great Extensive Array

With an extensive array of built-in features, version control, and workflow options, mojoPortal offers features found in far more expensive applications, absolutely free of charge. Additional premium features are available at reasonable rates, and support is provided in a timely and personalized manner.

Control Own Content

The ability to control their own content. If your users can write an e-mail, they have the skills to update their own content, freeing your users to focus on their content, and you as a technology professional to focus on more challenging technology – it’s a win-win!

Built-in blog and forum features

This will allow your users to avoid having to use third-party sites like Blogspot, dispersing their original content away from their core website. These features are designed to encourage site traffic and user interaction, which improves your client’s opportunities to convert first-time visitors into frequently returning visitors, gaining greater visibility for their website.

slider1

Best MojoPortal 2.4.1.0 Hosting Recommendation

After reviewed over 50+ Windows hosting companies. In shared hosting, we found ASPHostPortal is the best solution for MojoPortal 2.4.1.0. Our review site is designed to be a trusted place for bloggers, individuals and web designers to find best web hosting solutions at an affordable price. We review each web host in our view points independently, and rate them based on their reliability, features, technical support level, prices and reputation in the industry.

These top 3 providers for MojoPortal 2.4.1.0 Hosting shine and overmatch dozens of competitors in the version of ASP.NET and IIS, MSSQL database edition, control panel, .NET Framework versions, price and uptime. HostForLIFE.eu, ASPHostPortal.com, and UKWindowsHostASP.NET are proven to be the top 3 best cheap MojoPortal 2.4.1.0 hosting providers among plentiful providers in the field. We highly recommend customers going with them based on the feedbacks of verified customers and our real hosting experience on 50+ ASP.NET web hosting providers.

HostForLIFE.euASPHostPortal.comUKWIndowsHostASP.NET

  • Price: Starts From €3.00/month
  • Unlimited Domain
  • Unlimited Bandwidth
  • Unlimited Disk Space
  • Windows 2012 R2
  • MSSQL 2008/2012/2014
  • ASP.NET 2.0/3.5SP1/4.5/5, MVC 2/3/4/5, Silverlight 4/5/6
  • 24/7 Technical Support

  • Price: Starts From $5.00/month
  • Windows 2012 R2
  • MSSQL 2008/2012/2014
  • Dedicated Application Pool
  • ASP.NET 2.0/3.5SP1/4.5/5, MVC 2/3/4/5, Silverlight 4/5/6
  • World Class Data Center
  • Great Performance

  • Price: Starts From £5.50/month
  • Windows 2012 R2
  • MSSQL 2008/2012/2014
  • MySQL 5 databases
  • ASP.NET 2.0/3.5SP1/4.5/5, MVC 2/3/4/5, Silverlight 4/5/6
  • 30 Day Money Back
  • Full Trusted Hosting

logo_hflukwindowsasp.netlogo-asphostportal
Unlimited Domain5 DomainHost Unlimited Sites
Unlimited Bandwidth20 GBAnytime money back
Unlimited Disk Spaces1 GB99.9% hosting uptime
Full trust level 24×7 US support24×7 US support
Latest MSSQLLatest MSSQLLatest MSSQL
Latest MySQLLatest MySQLLatest MySQL
24×7 tech supportFree Cloud HostingASP.NET, MVC, Silverlight, URLRewrite2, WebMatrix
ASP.NET 1.1/2/3.5/4/5SP1/4.5, MVC 4/5, /5/6URLRewrite2 Support IIS 7/8/8.5Free Cloud Hosting
Support IIS 7/8/8.5ASP.NET, MVC, Silverlight, URLRewrite2, WebMatrixSupport IIS 7/8/8.5
More Details More Details More Details

How to Choose Cheap mojoPortal 2.4.1.0 Hosting Recommendation?

Reliability and Speed of Access

Not only should the web host be reliable and fast, it should guarantee its uptime (the time when it is functional). Look for a minimum uptime of 99%. In fact, even 99% is actually too low — it really should be 99.5% or higher. The host should provide some sort of refund (eg prorated refund or discount) if it falls below that figure. Note though that guarantees are often hard to enforce from your end — especially if the host denies there was any downtime. However, without that guarantee, the web host will have little incentive to ensure that its servers are running all the time.

Data Transfer (Traffic/Bandwidth)

Data transfer (sometimes loosely referred to as “traffic” or “bandwidth”) is the amount of bytes transferred from your site to visitors when they browse your site.

Don’t believe any commercial web host that advertises “unlimited bandwidth”. The host has to pay for the bandwidth, and if you consume a lot of it, they will not silently bear your costs. Many high bandwidth websites have found this out the hard way when they suddenly receive an exorbitant bill for having “exceeded” the “unlimited bandwidth”. Always look for details on how much traffic the package allows. I personally always stay clear of any host that advertises “unlimited transfer”, even if the exact amount is specified somewhere else (sometimes buried in their policy statements). Usually you will find that they redefine “unlimited” to be limited in some way.

In addition, while bandwidth provided is something you should always check, do not be unduly swayed by promises of incredibly huge amounts of bandwidth. Chances are that your website will never be able to use that amount because it will hit other limits, namely resource limits.

To give you a rough idea of the typical traffic requirements of a website, most new sites that don’t provide video or music on their site use less than 3 GB of bandwidth per month. Your traffic requirements will grow over time, as your site becomes more well-known, so you will need to also check their policy when you exceed your data transfer limit: is there a published charge per GB over the allowed bandwidth? Is the charge made according to actual usage or are you expected to pre-pay for a potential overage? It is better not to go for hosts that expect you to prepay for overages, since it is very hard to forsee when your site will exceed its bandwidth and by how much.

Disk space

For the same reason as bandwidth, watch out also for those “unlimited disk space” schemes. Many new sites (that don’t host videos or music) need less than 20 MB of web space, so even if you are provided with a host that tempts you with 100 GB (or “unlimited space”), be aware that you are unlikely to use that space, so don’t let the 100 GB space be too big a factor in your consideration when comparing with other web hosts. The hosting company is also aware of that, which is why they feel free to offer you that as a means of enticing you to host there.

Technical support

Does its technical support function 24 hours a day, 7 days a week (often abbreviated 24/7), all year around? Note that I will not accept a host which does not have staff working on weekends or public holidays. You will be surprised at how often things go wrong at the most inconvenient of times. Incidentally, just because a host advertises that it has 24/7 support does not necessarily mean that it really has that kind of support. Test them out by emailing at midnight and on Saturday nights, Sunday mornings, etc. Check out how long they take to respond. Besides speed of responses, check to see if they are technically competent. You wouldn’t want to sign up with a host that is run by a bunch of salesmen who only know how to sell and not fix problems.

Email, Autoresponders, POP3, Mail Forwarding

If you have your own site, you will probably want to have email addresses at your own domain, like sales@yourdomain.com, etc. Does the host allow you to set up whatever email addresses you want on your domain, so that mail can be forwarded to your current email address, or placed into a mail box on your web hosting account itself? Can you set an email address to automatically reply to the sender with a preset message (called an autoresponder)? Can you retrieve your mail with your email software?

Control Panel

This is called various names by different hosts, but essentially, they all allow you to manage different aspects of your web account yourself. Typically, and at the very minimum, it should allow you to do things like add, delete, and manage your email addresses, and change passwords for your account. I will not sign up with a host where I have to go through their technical support each time I want to change a password or add/delete an email account. Such tasks are common maintenance chores that every webmaster performs time and time again, and it would be a great hassle if you had to wait for their technical support to make the changes for you.

Web Server and Operating System

Is the type of operating system and server important?

In general, most people will want to sign up for a web host offering a Unix-based system (like Linux, FreeBSD or OpenBSD) and running the Apache web server. Most web-based software assume your website is running on such a system, and you will usually experience fewer compatibility issues with it. There are also a lot of guides available on the Internet on configuring such systems, so finding help when you need it is easier as well.

In my opinion, the only time when you will want to use a Windows server is if you’re running Windows-specific programs, like ASP scripts. But even then, you’ll probably be better off looking for a PHP-equivalent, and using a Unix-based system.

Price

I was actually hesitant to list this, but I guess it’s futile not to. However, I would caution that while price is always a factor, you should realise (“realize” in US English) that you often get what you pay for, although it’s not necessarily true that the most expensive hosts are the best.

Monthly/Quarterly/Annual Payment Plans

Most web hosts allow you to select an annual payment plan that gives you a cheaper rate than if you were to pay monthly. My current personal preference is to pay monthly with all new web hosts until I’m assured of their reliability and honesty. Paying monthly allows me to switch web hosts quickly when I find that the current host does not meet my requirements: this way, I’m not tied down to a bad web host because I have prepaid for an entire year. I do this even if the new web host guarantees that they will refund the balance if I’m dissatisfied, since at the point I sign up, I have no assurance that they will honour their guarantee. Later (usually after a couple of years), when I’m satisfied with the host, I may change payment plans to the discounted annual plans.

Resellers?

Not all hosting companies own or lease their own web servers. Some of them are actually resellers for some other hosting company. The disadvantage of using a reseller is the possibility that you are dealing with people who don’t know much about the system they are selling and who take longer to help you (they have to transmit your technical support request to the actual hosting company for it to be acted upon). However, this also depends on both the reseller and the underlying hosting company. It is thus wise not to rule out all resellers; there are a number of reliable and fast ones who are actually quite good and cheap. In fact, a number of resellers sell the same packages cheaper than their original hosting company. If you find out that a particular company is a reseller, you will need to investigate both the reseller and the real hosting company.

International

If you don’t stay in the USA, you have the option of hosting your site with some local provider. The advantage here is the ease of dealing with them (they are after all easily accessible by phone call or a visit), your familiarity with the local laws and easy recourse to those laws should it be necessary. It should be your choice if your target audience is local (eg a local fast food delivery service). On the other hand, hosting it in USA has the advantage of faster access for what is probably the largest number of your overseas visitors (particularly if you have an English-speaking audience). You also have a large number of hosting companies to choose from, and as a result, cheaper prices too.