srachit
By:
srachit

How to setup ghost in a sub directory with apache2

December 6, 2014 1.9k views

Hello I'm trying to setup ghost on my new droplet in a sub directory but cant get it to work for the life of. I've followed the these tutorials:
http://www.allaboutghost.com/how-to-install-ghost-in-a-subdirectory/
http://www.allaboutghost.com/how-to-proxy-port-80-to-2368-for-ghost-with-apache/

I basically want my main website to be srachit.com (which is working) and then a link to srachit.com/blog where my ghost website will be present (currently going to this link just displays all the files in that directory)

Any suggestions on what may be wrong?

1 comment
  • I have managed to get the blog to display here: http://srachit.com:2368/blog/
    How do I make it to display here: http://srachit.com/blog

    This is my srachit.com.conf for apache2

    <VirtualHost *:80>
            ServerAdmin srachit@gmail.com
            DocumentRoot /var/www/srachit.com/public_html
            ServerName srachit.com
            ServerAlias www.srachit.com
            ProxyRequests off
            ProxyPass /var/www/srachit.com/public_html/blog http://104.236.167.29:2368/blog
            ProxyPassReverse /var/www/srachit.com/public_html/blog http:/104.236.167.29:2368/blog
    
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    
1 Answer

ProxyPass and ProxyPassReverse take a relative URI path, not the actual filesystem path to your website.

Replace

        ProxyPass /var/www/srachit.com/public_html/blog http://104.236.167.29:2368/blog
        ProxyPassReverse /var/www/srachit.com/public_html/blog http:/104.236.167.29:2368/blog

with

        ProxyPass /blog http://104.236.167.29:2368/
        ProxyPassReverse /blog http:/104.236.167.29:2368/

and restart Apache:

sudo service apache2 restart

You might have to edit Ghost's configuration and set the site url to http://srachit.com/blog as well.

Have another answer? Share your knowledge.