Beginner Help - Wordpress, LEMP, NGINX, Apache, basic setup

Posted May 18, 2014 5.2k views
Hello all, Will try to keep this concise. Have worked with websites for many years, always managed shared hosting etc... I would like to move my websites to DO. I played around with the setup all day yesterday and got a test site working between a droplet and ServerPilot, however I want to be able to manage my own Droplet instead of relying on others. I have read the tutorials here but am still really confused, the problem being I don't know which questions to ask. 1) What do I need to install to get started? It seems that LEMP is the way to go, but I read that NGINX can also be installed in FRONT of apache (so that .htaccess could be used?) 2) I just want a secure, fast, easy to use website with a wordpress installation on it. I assume NGINX because this site will grow over time. 3) Eventually, I'd like to add all of my domains onto this droplet (one big account). I'm having a very difficult time with the tutorials. For example, the tutorial may say.... enable gzip compression on etc/nginx/ngnix.conf My question is how? I can't find any instructions on how to edit this file, how to find it, what program to use or how to create it - or what I have to type in order to do so. I'm really confused and don't want to settle on shared hosting. I downloaded Putty for windows and have been able to login with the root/pw combo that was sent to me, that's about it. I know nothing of sudo or nano or vim or any of this. A lot of the tutorials are missing (appears to me) to be the basics steps. I can follow along okay but am missing the key points. Is the big black box in the DO control panel area the same thing as putty? Really want to learn this so I can setup a server properly from the get go. Maybe a bullet point list? *Ubuntu 14.04 64 bit *LEMP *PHP my admin needed? *Next I install wordpress? Thank you to all who help. I look forward to learning..... and having a faster loading website than Hostgator...

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
5 answers
Hello there, you seem a lot stressed.
First of all calm down.
My suggestion is, since you are familiar with Hostgator which uses cPanel an easy way to setup everything is to purchase cPanel from a re-seller. cPanel will install everything for you in no time. You can see here how to install cPanel on CentOS here.
by Etel Sverdlov
cPanel is a convenient application that allows users to administer servers through a GUI interface instead of the traditional command line. Although the installation for cPanel is relatively simple, the script does take several hours to run. Here's how to install cPanel on a virtual server running Centos 6
Hello Marinos,

Thank you for the post. It has just been a rough week health and work wise...
Not having CPanel is okay with me. The functionality will still be the same, minus the GUI correct?

I did some more reading and I believe I have to setup my website in this order. Please advise?

1) (Server setup/roles)

2) (LEMP)

3) (Wordpress)

a) Am I missing anything? PHPMyAdmin, firewalls, NGinx running before Apache (do I even need apache?)
b) Firewall?
c) FTP

Last but not least - my main frustration is how to implement the commands. When a tutorial says to "create this conf file"... where do I go and what do I type to do that?
Example:) Open a new file called info.php within your document root in your text editor:

sudo nano /usr/share/nginx/html/info.php

I have no idea how to do that.
by Justin Ellingwood
When you start a new server, there are a few steps that you should take every time to add some basic security and set a solid foundation. In this guide, we'll walk you through the basic steps necessary to hit the ground running with Ubuntu 14.04.
The order you gave is awesome!
About your questions:
a) phpmyadmin is a web based application to manage your databases. For example: You are going to install a wordpress website but you don't want to connect via ssh to your VPS to create the database. You can have phpmyadmin as an interface to create users, databases and everything else that has to do with databases. nginx and Apache are webservers. In my opinion nginx is better than Apache. You need only one running on your server.
b) A firewall must be configured after everything is done to secure your VPS. Since you are using Ubuntu have a look here on how to configure iptables on Ubuntu:
c) You can configure ProFTPd on your VPS for SFTP if you want

sudo - Gives root privileges to the user to edit the file (Administrator in windows)
nano - Command line text editor, the buttons mentioned at the end of the file can be used like this ctrl+o = save file
and at the end the path of the file you want to edit
These are Linux basic commands which can be found in the internet. Actually everything can be found on the internet. Don't hesitate to ask for any help, and sorry for my late reply.
by Justin Ellingwood
ProFTPd is a popular FTP server for transferring files between your local computer and server. However, FTP as a protocol is very insecure. In this guide, we will show you how to configure ProFTPd to use SFTP, a secure alternative, instead of FTP.
Forumrox I'm newbie with linux and cmd line as well, but as I learn something new every day I also gain more confidence working with "penguin os" :) Just take it easy, search for some article on ubuntu commands and let that be your first step :) After that you'll be able to follow tutorials on DO. I'll get my first droplet in few days, for now I was working with virtual environments via Vagrant just so I prepare :) Anyway, best luck with your droplet ;)
Hey forumrox,

check out the coolest way to achieve the stack that you want to install.


easyengine (ee) is a linux shell-script to manage your WordPress-Nginx websites on Ubuntu (12.04, 12.10, 13.10 & 14.04)/ Debian (6,7) server.

It is made for WordPress-nginx sites. You can install Nginx, PHP, MySQL, Postfix, phpMyAdmin and their dependencies in one go!

Just 3 commands which make your life much easier.

curl -sL | sudo bash # install easy-engine
ee system install # install nginx, php, mysql, postfix
ee site create --wp # install wordpress on

If there is something, that you need to have cleared up, go through the FAQs.

And if you need help, we are always there. :)

Twitter handle: @easyengine