Hosting static files on your Ghost blog
One thing that initially annoyed me when I switched to Ghost was it provided no "facility" for uploading my personal static files. For example, I wanted my CV on the server so I can link to it from my about page. If you use the DigitalOcean image then you can follow the instructions here to the letter. Other users can use the same instructions but perhaps, on a different file(more on this later).
Steps
Firstly you need to login to your Droplet/VPS 😜
Next we open the Ghost Nginx file using nano /etc/nginx/sites-enabled/ghost
. I use Vim so feel free to use whatever editor you are confortable with. The file should look like this:
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
server_name fayimora.com; # Replace with your domain
root /usr/share/nginx/html;
index index.html index.htm;
client_max_body_size 10G;
location / {
proxy_pass http://localhost:2368;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffering off;
}
}
Next you add this block after the location /
block:
location /static/ {
alias /var/www/static/;
}
So we have just created an alias to a folder on the file system. I believe you can alias whatever folder you want. Also, the static folder does not exist by default so I created that.
Restart nginx sudo service nginx restart
and ghost sudo service ghost restart
preferably in that order.
If I upload a file to /var/www/static/
called cv.pdf
and visit http://fayimora.com/static/cv.pdf, my cv will be served!👏
Ciao!