How to Set Up a Dedicated Server

I've always used a shared hosting service, with the exception of a dedicated server that came with a set up dynamic that you could purchase, hence I have no clue as to what I need to do other than the following:

I'm on 1and1. I was told to login to my server using a Windows Remote Desktop interface, which I was able to do. After that, however, I'm lost.

From what I understand, I don't even have on this server what's needed in order to load files using an ftp interface, so here's my shopping list of what I need:

Whatever needs to be in place in order to be able to upload files using FileZilla.

There it is. How do I proceed.

brucegustPHP DeveloperAsked:
Who is Participating?
A few disagreements with edster9999:

You don't need to reinstall a different operating system to use PHP or Apache or anything. Windows will run PHP, Apache, and MySQL fine, as well as many other "traditionally" Linux components like Perl, Python, and so on (if you want those).

Yes, IIS is a Windows/Microsoft product, so it typically comes already installed on Windows Server operating systems. It is not always ENABLED by default, so if you don't want to use IIS, then you're usually fine. At most, you might have to go to the Services area of the control panel and disable IIS (or if you want to be thorough, you can just remove it like any other Windows component). There are guides on removing IIS if you want to do that. Just google around.

IIS is also intended to run ASP (nowadays, ASP.NET), but it's not required. IIS can run PHP just fine and you can disable ASP support if you want to do so.

That said, there are really no languages anymore that are specific to one operating system. You can run PHP and ASP on Linux or Windows. You can run the Apache web server on Windows or Linux. You can run MySQL on Windows or Linux. As far as I know, the -only- thing that is specific to ONLY Windows is still the IIS web server, but again, Apache is a working alternative.

You can set up each component individually, but if you're new to this type of thing, I would suggest just installing something like XAMPP or WAMPServer. Those are simply installer tools that will set you up with PHP, Apache, MySQL, and usually other optional components (often including FTP servers or mail servers, depending on what you want). But they should make the process fairly painless and they often come with nice user interfaces so you can configure the components easily.

Try googling for "xampp wampserver easyphp" and you should find various articles that talk about the different installers. While they are all 90% the same, you might find one that suits your purposes better.

I personally prefer XAMPP, except for the fact that if you want to run SSL-enabled PHP pages that use any PHP's OpenSSL functions, there's a slight bug that requires you to update the Apache server that comes with XAMPP.

After you get the various components installed, I would suggest this:

1. If you still need an FTP server, use FileZilla's server. It's free and it works pretty well.

2. If you REALLY need PHPMyAdmin (I prefer HeidiSQL nowadays - I think it's far better than phpMyAdmin now and it's a free Windows tool), then make sure you don't install it as /phpmyadmin in your web site. Lots of malicious bots will try to hit that URL and many similar versions (/pma, /myadmin, /my, etc...), so name it something obscure for further protection (/brucegust) and make sure you protect the directory with passwords or IP protection, if you are comfortable doing that.

3. Find articles on hardening your Windows server's security. If you're going to run a dedicated server, you're GOING to be hammered with automated attacks, and if you haven't properly secured your server, you WILL be compromised and you'll end up running a pirated movie distribution server without realizing it. Trust me, anyone who's run a server has been there, and it's not fun. Things like FTP are insecure, and the more you can do to protect yourself and set up firewalls, the better. You're going to have to use strong passwords, IP restrictions where possible, security certificates, etc... (for example, if you can set up client certificate authentication for Remote Desktop, so much the better - RDP is a very frequent target for attacks).
If you are connecting to the box using WIndows RDP then it is very likely it is running Windows.

Windows server comes with IIS - you may need to go to control panel and software and enable it - and depending on the setup - it may even ask for the windows disks (which your host shuld have in a shared location if needed).
IIS will run Web sites and FTP sites.

The MySQL is a quick download and install.

Now the PHP side... this is different.
You can do it..... but why would you.  Its like have a jet engine on your bicycle - it just doesn't make sense.
PHP is the language that runs behind the web pages and makes them work or makes them dynamic.
Windows uses ASP.
Linux uses PHP.

It is possible to run the wrong one on the wrong host.... but it will lead to all sorts of pain. Anything you install under it, will fail or will need converting to work with the file paths of the other hosts system.  It is just a bad idea.
If you have PHP programs to run - then reinstall your server with Linux.
The final step is PHPmyadmin - this will fit onto either system agaian with a quick download.

FileZilla uses FTP to transfer files so will be handled easily by either OS (Windows or Linux)
Milind KoyandeCommented:
Great explanation by gr8gonzo.

I would like to add few things which will help you to configure server.

As you always used Shared hosting, how you use to manage your website like adding email account, creating FTP. Do you use any control panel like cPanel or Plesk.

If you are using any Control panel, then i would recommend you to contact the host and get the same control panel installed on your dedicated server. Installation of control panel will automatically install and configure webserver, FTP server, PHP, MySQL, phpmyadmin.

Note: If you have used cPanel (or Plesk with Linux) then you will have to get the server re-installed with Linux and cPanel or Plesk).

Installing control panel will make your work easy and also as you know how to manage stuff from control panel (if you have control panel with share hosting) it will become a lot easier for you to manage.

If you face any problem you can contact the hosting company or ask question here.
brucegustPHP DeveloperAuthor Commented:
Guys, thanks so much!

Definitely a question I'll keep in my cue for future reference.

The client determined to keep their storage on a dedicated server and just referenced it using an IP address and moved the web dynamic to a shared hosting situation, so all that to say, we got it taken care of.

The last time I used a dedicated server, the hosting service offered a package where they set everything up for you, so this was my first solo flight and, while I didn't have to do it this time around, I'm sure there will be another chance and I'll keep this thread in plain view.

Thanks again!
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.