Now that you have some web space and some software you want to install how do you get it on the web? Some hosting companies do offer one-button installs for common web applications but even with that you will find yourself wanting to upload other files. for short runs you can use a web-based upload page but when you need to upload more than five files you need a dedicated FTP client.
What is FTP?
FTP or File Transfer Protocol is a very important tool in every webmaster's toolkit. There are many options for FTP clients but the one I use most is Filezilla. Why do I like it so much?
- Easy to use
- Supports FTP, FTP over SSL/TLS (FTPS) and SSH File Transfer Protocol (SFTP)
- Cross-platform. Runs on Windows, Linux, *BSD, OSX and more
- Available in many languages
- Supports resume and transfer of large files >4GB
- Powerful Site Manager and transfer queue
- Drag & drop support
- Configurable Speed limits
- Filename filters
- Network configuration wizard
Now, you could be a masochist and use a console ftp client but why do that to yourself?
Permissions
Remember when you were a kid and you had to ask your parents for permission to stay out late or eat some junk food? Every file you have on your server has its own set of permissions. These permissions are stored in an octal format consisting of three digits.
As with console based ftp there is also a console based way to change a file's permissions: chmod. Filezilla has this functionality built-in and you need only right click on a file (or a group of files) to change their permissions.
Each of the three octal digits represents one of the following groups: Owner, Group and Public. Because each octal digit contains three bits each bit represents one of the following permissions: Read, Write and Execute.
Example 1: textfile.html -rwxrwxrwx (777) - This file is readable, writable and executable by everyone.
Example 2: otherfile.html -r--r--r-- (444) -- This file is readable by everyone and that is it.
Example 3: configfile.php -rw-r--r-- (644) -- This file is readable by everyone and writable only by the owner.
File permissions are very important and you need to be careful when making changes. Hackers and crackers can make short work of your site if they gain the ability to modify the files on your server due to the permissions set on your file. Usee 644 for most of your files and 777 only when you know the directory is secure or otherwise unable to allow a hacker to take control of your server.
Recommendations
For domain registration I suggest you use GoDaddy. I use them myself and have been very satisfied with them and their support staff. I have called them for account support (not a toll free number) and I talked to someone who spoke perfect English and lives in the USA. Many companies outsource their support call center to areas where English is not the native tongue. Notice I said the number was not toll free? Yeah, you pay for the call but it is worth it.
For hosting you could use GoDaddy but that would break my cardinal rule on keeping the two separate. The other thing is that I have never liked their website control panel. I have administered some sites in the past hosted through GoDaddy and I was never happy doing it. Instead I recommend going with ImHosted.com Web Hosting. They will register the domain for you when you sign up and they have some great plans in place. They also have some 'one-click' install tools in their control panel to get you up and running fast.