Subdomains vs. Subdirectories

When you’re first getting started with a new space on a new Web host, you might think of yourself as owning a small “territory” of the Web. Everything you place in your public folder on the server becomes available for anyone on the Web to see (assuming they know the address of your site and the files you’ve placed there).

If you’re just putting up a handful of static, HTML pages which you want to make available to colleagues, friends, or family by sending them links, then working with this large, unorganized space may work. But as soon as you get to the point where you want to organize your site, you’re going to need a new strategy.

Consider this scenario: you want to have a personal blog on your new Web space, where you share pictures and short written pieces with family, friends, and colleagues. In addition, you’re working on a large research project that requires you to build a Web-based repository of digital images related to your discipline. You want to use one application (say, WordPress) to manage your personal blog. For your research project, you’ve settled on another open-source application (Say, Omeka). Both of these are applications that need to be installed on your Web host, but you can’t just put them both at your main domain name – if you did, both sites would quickly experience conflicts and errors. You need to cordon off separate spaces for your different Web “properties.”

There are two primary strategies for parceling up your Web space. You can create subdomains or subdirectories. But before you can understand the difference, you need to first understand what we mean when we talk about your root domain.

Root Domain

Let’s say you’ve registered a new domain for usccreate.org called yourdomain.com. Anything that is stored at this core URL is considered to be at the root of your domain: Nothing comes before the address or after the address. You can certainly decide that you simply want to have a single site on your Web host (say a blog running WordPress), and you can set that blog up at your domain’s root. To get to your site in this scenario, users would simply go to yourdomain.com.

Subdomains

When you want to do more than just have a single site at the root of your site, you need to decide now to organize your space. One way to do so is by setting up subdomains.

You’re already familiar with the concept of subdomains, even if you don’t know it. A subdomain is a prefix on the URL of a domain.

Domains serve two purposes: they help to organize the site from a technical perspective, but they also serve as indications to the users that they are in a new/different space.

As you work on your site, you’re welcome to create as many subdomains as you like, and in each subdomain you can actually create a distinct, individual Web site.

Subdirectories

The alternative for organizing your space is to simply set up subdirectories. These function much like file folders on your computer. Instead of creating a blog at blog.yourdomain.com you would place it in a subdirectory called “blog” making the address yourdomain.com/blog. Setting up subdirectory is really easy. You can create folders on the fly when installing applications (like WordPress), and you can also manually create them in your file browser.

There is one particular issue you need to be aware of. Let’s say you’ve installed WordPress to be your primary blog at yourdomain.com. Later, you decide you want to create another image gallery site on your site, and you want to place it at yourdomain.com/gallery. But, if for some reason you’ve already created a page on your WordPress site called “Gallery” then the URL yourdomain.com/gallery will already be taken. If you try to create a subdirectory of the same name, you’ll get a conflict and errors.

Tips & Review
  • Subdomains are generally a cleaner, more elegant solution to organizing your site. You’re less likely to get conflicts or errors. However, when using subdomains the process is slightly more complicated: You must create subdomains first, before you can install anything in them.
  • Subdirectories don’t create as pretty URLs as subdomains, but they’re easier to set up. They can, however, result in conflicts with existing Web pages.
  • As soon as you create subdomains or subdirectories to organize your site, you need to consider how people are going to find them. If you’ve created a new primary blog at blog.yourdomain.com, and someone goes to just yourdomain.com, they won’t see that new site. It is possible to set up redirects to avoid this issue. You can also always create links from pages on one subdomain of your site to another.
  • If you really just need one site, sometimes installing at the root of your domain is the easiest thing to do, at least as you’re getting started. You can always add more pieces to your territory later with either subdomains or subdirectories.
Tutorials

Setting Up Subdomains

A subdomain is one way of organizing and separating content on your site. To create a subdomain, use the following steps:

Login to usccreate.org with your network username and password.

log in

Once logged in you’ll be at the homepage of your control panel. Scroll down and click the Domains button on the cPanel.

Domains screenshot

Select Create a New Domain.

Create a New Domain Screenshot

Choose a name for your subdomain and type it into the Domain box. Just like top-level domains (e.g. johnsmith.usccreate.org), subdomains can only contain numbers, letters, and hyphens, and the best subdomains are simple, short, and descriptive.

Once you’ve typed in a name, cPanel will automatically populate the Document root field for you. This will create a folder to contain your subdomain’s files. You’ll usually want this folder to match the name of your subdomain, so it’s easy to identify where different files live in your account. You might want to change the document root if you already have a folder in your account that has the same name as the subdomain you are trying to create, although this should be rare. Once you’re done, click Submit.

If everything went well, you should see a message that your subdomain was created successfully. Your subdomain will now be available as an option for automatic installation of various software (WordPress, etc).

Subdomains a nice option when you are tasked with creating sites for two or more separate projects.

Setting Up FTP

There may be times when you need to place files onto your space on your Web server. There are a number of scenarios when this might be necessary:

  • You’re working with an application that allows you to install plugins/extensions, but the files need to be manually moved to the server in order to add them. (Note: This is NOT required with WordPress which allows you to install plugins through the backend in your browser.)
  • You’ve developed a custom site/pages using a Web design program, and you need to upload the files you created to the server
  • You’re installing an application that isn’t part of the applications in Installatron.

One way to upload files is by using the File Manager that is part of cPanel. However, sometimes you’ll find it easier/necessary to use FTP, or File Transfer Protocol, to move files to the server. This can be particularly useful if you’re working with a Web space where you’re not the owner (so you don’t have access to the File Manager in cPanel) or if you need to provide file access to someone else to your space on the Web server.

What exactly is FTP?

File Transfer Protocol is a method that allows you to remotely move files to a Web server from another location – usually your local/personal computer. Using a pre-defined FTP account (with a username and password), you can configure an FTP client (a program you run on your computer that allows you to transfer files via FTP.

There are lots of FTP clients that you can use; some are free and some are not. A few free ones you might consider:

For the purpose of this tutorial, we’ll show you how to set up FTP in FileZilla, but you should be able to generalize these instructions to use in any FTP client.

Get Information about Your FTP Account

If you’re FTPing to your own space on the Web server, or if you’re setting up an FTP account for someone else to use to FTP to your space, you’ll need to start by getting information about the FTP credentials from cPanel:

  1. Login to usccreate.org with your network username and password.
  2. In the Search Box at the top of the page, search for “FTP”, and click the FTP Accounts icon that appears. 
  3. You’ll have the option to create a new FTP account, or you can scroll down the page to find the credentials for the default FTP account. If you want to create an account, fill out the Add FTP Account form with a username and password. By default, the new FTP account will be limited to a directory with the same name as the account you’re creating. You can change this to a different directory, if you want to grant this account access to a different location.  NOTE: Make sure you know/remember the password you enter. When you’re done, click Create FTP Account.
  4. Once you’ve created the new account, you’ll see it appear in the list at the bottom of the FTP Accounts page. In addition to any accounts you’ve created, in the Special FTP Accounts section, you’ll see the default FTP Account. You’ll know this account because the username corresponds to your cPanel username. This FTP account has full privileges to access any space on your Web server. 
  5. For whichever account you need credentials for, click the Configure FTP Client link.

  6. Write down the username, server, and port information that appears. You will need to use this (or you will need to provide this to the person you are giving FTP access) along with the password you created in Step 3 in order to configure your FTP client.

Configure FTP in Your FTP Client

Below are links to tutorials for setting up both FileZilla and CyberDuck to connect to you FTP account.

File Structures and the File Manager

Web hosting is, at it’s basic core, files and folders on a computer that is connected to the internet and setup to distribute them. How that computer (typically a server) is setup to do that is covered more in LAMP Environments but this article will explain the idea of the file structure and how it relates to what you view on your domain.

When you signed up for your domain a web hosting account was created. Although you typically will interact mostly with the web interface to create subdomains, install applications, and other common tasks, you might occasionally also need to work directly with the files in your account. The File Manager in your cPanel is one way to see these files. You can also create an FTP account in cPanel and use an FTP program to interact with these files (FTP stands for File Transfer Protocol, and it’s a way of using a desktop client to transfer files to and from your Web server space).

Let’s take a look at the File Manager built into your cPanel to get a better understanding of the file structure that makes up your website(s).

log in

Login to usccreate.org with your network username and password.

On the homepage of your control panel you’ll have all the various tools listed. You can easily find the File Manager by using the search tool in the upper righthand corner and typing File Manager.

You can also find its icon under Files.

You are now sent to the File Manager and can navigate the folder structure there.

You’ll notice when the File Manager opens up that this looks very much like a folder on your computer. There are a few folders in it as well as files, and you can navigate down into those folders and see what’s inside of them. At the top level of the File Manager you also have the option of interacting with files and folders you select by moving them around or removing them. There is a larger article all about how to use the file manager at Accessing Your Files through the File Manager so we won’t talk much about how the interface works, rather we’ll cover what those folders and files actually mean and how they relate to what someone sees when they visit your website.

By default you have a variety of folders at the root of your web space (the first screen you see when you open up the file manager). Some of them are created automatically to store information about the panel and setup of certain sites. These folders are things like access-logs, etc, ssl, and tmp. You can safely ignore most of those folders because they don’t correspond to actual websites. Let’s look at which folders do and how it all works.

Your main domain, mydomain.com, corresponds with a folder called “public_html.” Whatever files and folders are inside of this folder are available at that domain. If you installed WordPress here you’ll likely see a lot of WordPress-related files within it (which were probably helpfully put there by the automated installer). Let’s say we uploaded an image called mypicture.jpg into the public_html folder. That image would now be available at mydomain.com/mypicture.jpg. The slash after your domain implies “this file is inside this folder”. But what if we had a folder inside the public_html folder? How does that appear? This is typically called a subfolder so let’s put a folder in public_html called “images” and put our image, mypicture.jpg, inside of that folder. What would you type in a browser to get to that file now? The location would be mydomain.com/images/mypicture.jpg. So subfolders are also indicated by a forward slash after a domain.

What about subdomains? You can have completely separate sites called subdomains that appear as nameofsubdomain.mydomain.com. But where are they in the file structure? When you created your subdomain the control panel asked you to give the folder a name. If I had a subdomain called photos.mydomain.com for example, I might want to name the folder “photos” (by default your control panel will call the folder by the name of the subdomain). Folders for subdomains are located inside the public_html folder. So when you go to the File Manager and navigate to public_html you’ll see folders listed for all of your subdomains and once you navigate inside one of those folders you’ll see files and folders specifically for that subdomain that appear on the web at that subdomain’s address.

The File Manager in your control panel is great to view these files and folders, but it can be limiting if you want to upload an entire folder of information to your website. If you find yourself wanting to do more with the files and folders on your web space you can download an FTP program like Filezilla and connect to your website by creating an FTP account in your control panel (also located in the Websites and Domains tab). An FTP program will allow you to upload and download an unlimited number of files and folders quickly.

Accessing Your Files through the File Manager

Your usccreate.org cPanel includes a File Manager that allows you to interact directly with the files stored in your web hosting account. This can be useful if you want to upload software that cannot be automatically installed via the Web Applications section of your cPanel, if you need to change the name or permissions of a file or group or files, or if you want to edit a plain text file. To access your files via the File Manager, use these steps:

Login to usccreate.org with your network username and password.

Once logged in you’ll be at the homepage of your control panel. The easiest way to navigate the panel is using the search feature in the top right panel. Click the Search box and type “File Manager” (without the quotes). When you press enter, you will be automatically redirected to the File Manager.  You can also find its icon under Files.

On the left side of the “File Manager” window, you’ll see a navigation menu containing the file structure of your webhosting account. More information about the contents of these files and folders can be found in the “File Structures and the File Manager” documentation in this knowledge base.

In the navigation menu, choose the public_html option. This will take you directly into the folder that contains the files associated with your website(s).

You’ll notice your current location (the public_html folder) is bolded and highlighted in this menu. Click the [+] (expand) icon next to a folder to see what subfolders it contains, or click on the name of the folder to view all of its contents in the file browser on the right side of the page.

You can also navigate through the folders in your account by double-clicking on them in the file browser on the right side of the “File Manager” page.

To select an item, click once on its icon in the file browser. You can also use the “Select All” button above the file browser, or your computer’s keyboard shortcuts (Shift, Command, Control, etc), to select multiple items from this list.

Depending on what you have selected, different options will be available to you in the action menu across the top of the “File Manager” page. If you have selected a folder, for example, you can “Rename” it or “Change Permissions” on it, but do not edit it using the Code Editor or HTML Editor.

If you know exactly what location you want to skip to within your webhosting account, you can type it into the box directly above the navigation menu and click Go.

Alternatively, if you know the exact name of the file or folder you are looking for, but not its location, you can use the Search box to find it.

Applications Available in Installatron

Installatron, the script installer that is part of the usccreate.org cPanel, allows you to easily install Web applications to your Web space. Below is a list of all of the applications currently available to you through Installatron:

Content Management

  • WordPress
  • Omeka
  • Scalar
  • Drupal
  • Mukurtu
  • Mahara
  • Grav
  • Big Picture Calling Card
  • Dimension Calling Card
  • Eventually Calling Card
  • Highlights Calling Card
  • Omeka S
  • Tru Collector
  • Tru Writer
  • Commons in a Box

Photos and Files

  • Nextcloud

Surveys and Statistics

  • LimeSurvey
  • Matomo

Miscellaneous

  • OHMS Viewer

Installing Applications with Installatron

Installatron is a script installer that allows you to quickly and easily install Web applications to on the Web space. By default, when you use Installatron, the application you add will be automatically upgraded whenever a new version is available (and a backup will be kept, just in case).

Installing Applications Using Installatron

  • To get started you’ll need to login to your control panel by going to https://usccreate.org/dashboard/.
  • Here you’ll login with your USC network username and password.

  • Once logged in you’ll be at the homepage of your control panel. You will need to scroll down until you see a section of the Control Panel labeled “Web Applications.” Within this section you will see a link to the Installatron which you should click.​ Or, you can type “installatron” (without quotes) into the search bar.  When you press enter you will automatically be redirected to the Installatron page.
  • When Installatron opens, you will see a list of any applications you’ve already installed. To install something new, click on the Applications Browser button (labeled with a large star).
  • A listing of all of the applications you can install by default in Installatron will appear. Browse to the one you want to install, and click the icon.
  • After clicking the icon, a page will appear with information about the application, links to resources, and a link to install it.
  • Click “Install this application” when you are ready.
  • A page will appear with a number of settings you can choose/change. The image below shows these settings; here is a rundown of them:
    • Location: You’ll need to choose where to install your new application. You can install it at the root of your domain or in a subdomain (which you need to set up first). In addition, you can place your application in a folder (in either your root domain or a subdomain)
    • Version Information: You can choose a version of the application. Generally, we recommend choosing the default version. It is likely to be the most recent, stable release.
    • Updates & Database Management: By default, the system is set up to automatically upgrade (and create backups upon upgrading) all applications. In addition, by default, the database will be set up for you automatically. We recommend NOT changing these options.
    • Username/Password: An username/password will be automatically generated for you. You can choose to change this, if you like.
    • Click Install: After installation, you’ll be taken back to the main Installatron page, with details about the application you just installed. At anytime you can come back here to review the application details, back it up manually, or uninstall it.

To get to your new site, you can click the “website” link. What’s more, with certain applications you can use this space to login to the admin area.

In addition, you’ll have received an email with your username/password and a link to your new site.

Introduction to CPanel

Your Web hosting account on usccreate.org is managed through a control panel interface called cPanel. cPanel is an industry-standard tool for managing your domain and hosting. Using this tool, you can do all kind of thing with your Web space including the following:

  • install Web applications
  • view and manage files in your space
  • create subdomains
  • create and configure FTP accounts
  • review access logs for your site
  • manually manage and configure databases

Accessing cPanel has become even easier now! All you need to do is login at the top right of the page at usccreate.org (with your network username and Password) and your website’s cPanel will automatically be displayed upon login.

Once you’re logged in, you’ll see the cPanel interface. It is divided into sections, making it easy to locate the different tools and services available to you.

Many of the tutorials on this site walk you through particular tasks in cPanel, but we encourage you to explore on your own, as well.

Registering a Domain

Create Digital currently utilizes subdomains of .usccreate.org for the initial signup, however after using your space you may decide you’d like to register a top-level domain (a .com, .net, .org address). You can do this by registering a domain with a service provider (we make a recommendation below, but any domain provider should work) and adding it to your space as an Addon Domain.

To start you’ll need to get the domain registered. When choosing a domain we recommend keeping it all lower-case, avoiding hyphens, keeping it short, and of course it will need to be a unique address. Reclaim Hosting has made the process of registering a domain quite simple, and the domain will work with very few additional steps due to the integration they have with our hosting system. To register a domain you would go to https://portal.reclaimhosting.com/cart.php?a=add&domain=register and type in the domain you’d like to purchase:

After ensuring the domain is available for purchase you’ll be prompted to select whether you’d like to protect the contact information associated with the domain. All domain registrations are required to have valid contact information publicly available, however a proxy service to protect your identity is available for an additional fee. You can read more about this service, ID Protect, at http://docs.reclaimhosting.com/FAQ/ID-Protect-FAQ/.

You’ll also be prompted for nameservers for the domain. If registering the domain through Reclaim Hosting you can leave these with the default. If registering the domain elsewhere you’ll want to point the nameservers to ns1.reclaimhosting.com and ns2.reclaimhosting.com in order for the domain to work with our system.

Once you’ve completed the checkout process with payment information the domain will be registered automatically. The last step is to add it to your existing account here at Create Digital. To do that you’ll log into your account at https://usccreate.org/dashboard/ and in cPanel navigate to Domains > Add-on Domains.

Here you will type in the domain that you registered previously to host it within your space on Create Digital. cPanel will also setup a subdomain which you can leave with the default that it creates and verify a location for the files for the domain (typically a folder inside of public_html). The option to create an additional FTP account is present but not necessary. Once the domain is entered click Add Domain to add the domain to your hosting account.

At this point the domain will now be hosted in your account and you can use it to install software, upload files, and any number of other actions available to you in cPanel.

Social Media

As you begin to build out your digital presence you’ll probably start to think about social media in some form. In fact it’s likely that you already have at least one, if not more, social media accounts (Facebook being the most popular to date). Everyone uses social media in different ways, and although it’s often interesting to see people break the boundaries of the “social norms” of a specific online community, this article will focus more on the accepted use cases for specific social networks and how they can help you build your digital presence. This is by no means a comprehensive “How To” of Twitter or Facebook, but a good starting guide to think about where you best fit in to these online communities.