User Tools

Site Tools


Install Ghost Blog Manually (cPanel Server)

This is a legacy article for older versions of Ghost. Newer versions of Ghost are no longer compatible with cPanel and will require an Unmanaged VPS with customized installation per Ghost documentation.

If you're looking for an unmanaged VPS for Ghost, then see our unmanaged VPS's page.

Installing Blogging Platform on a cPanel/WHM Server Manually

Very Hard
Very Hard

Subdomains should work, however they have not been tested at this time. Using this installation method will prevent sub folders of the domain from rendering properly as well. Additionally, add-on domains and parked domains have not been tested.

Additional note: This tutorial has conflicts when running EasyApache and rebuilding the httpd configuration. A modification to this tutorial is in the works for a fix.

Getting Started

  • You'll want to ensure that you create (or already have) a cPanel account with the corresponding domain name for this install.

    If you are planning to use a SSL Certificate on this install, ensure that the SSL has already been installing with cPanel/WHM.

  • cPanel file/folder structure for user accounts is simple.

is the document_root for website content. For this example I'm using dlghostly as the cPanel user acccount, for the domain Knowing this we can easily proceed with installing the tools required.

Installing node.JS, forever, and Ghost

All examples and documentation will be using /root/download as the "work" directory, however you can use any that you like, this is not important.

  1. Let's get into our work directory.
    1.   cd /root/downloads
  2. Now, let's download node.JS and Ghost.
    1.   wget
  3. Time to extract them and install them!
    1. node.JS
        tar xf node-v0.10.4.tar.gz
        cd node-v0.10.4
        make && make install
      • By default, it should be installed in `/usr/local/bin/node`, however let's make a symlink for it for good measure. (We're going to do the same for npm as well, which is the package manager).
      •   ln -s /usr/local/bin/node /usr/sbin/node
          ln -s /usr/local/bin/npm /usr/sbin/npm
      • The node.JS installation may install an older version of npm, so for good measure, let's go ahead and make sure it's the latest.
      •   npm -g install npm
      • Now a quick check to make sure they were installed properly.
  node -v

  npm -v
  1. forever

With node.JS and npm installed, we can now install forever. You'll most likely see some WARN flags, this is normal. Also, symlinking for further good measure.

  # npm -g install forever
  # ln -s /usr/local/bin/forever /usr/sbin/forever

Again, for good measure, checking version and installation.

  # forever --version

Ghost Platform

Now all of our "requirements" should be installed and ready to use. Now comes the fun part! Let's make sure that we're in the correct directory.

  # pwd
  # cd /root/downloads/
  # pwd

Great, so now we're in the downloads folder which contains our Ghost install archive. Let's copy it (or move, your choice, however I like retaining an original copy somewhere) to the cPanel user's document root (or public_html).

  # cp /home/dlghostly/public_html/

Now that it's in the cPanel account's document root, let's extract it and remove the un-needed .zip file.

  # cd /home/dlghostly/public_html/
  # unzip
  # rm
  rm: remove regular file `'? [y]

All of Ghost's core content files are now where they should be and you're ready to proceed with configuring Ghost itself and cPanel (Apache's) Virtual Hosts!

Configuring Ghost

cms/install-ghost-manually.txt · Last modified: 2021/02/23 09:34 by Jonathan K. W.