I upload my blog using FTP. I could use something like rsync, which I think would probably require fewer file uploads, but for now FTP is the way I like to do it as the pi has this functionality out of the box and I can upload directly to my _site directory.

The client I’m using is Filezilla. It’s free for download on mac, just be sure to get the client and not the server.

Open Filezilla and click on the connection button on the top left

01 Filezilla

Click on “new site” and give the new connection a memorable name.

Enter the following details:

Host: <your Pi’s IP Address> Protocol: SFTP Logon Type: Normal User: <your ssh user (most probably “pi”)> Password: <your logon password for the above user (if it’s still “raspberry” then I suggest you change it!)>

02 Add your pi host details

That’s it. Click connect and hopefully you’ll be taken to the home area for your Pi.

From here, navigate the left-hand window (where you will be transferring data from) to your local blog directory. Then, navigate the right-hand window to your remote nginx root area on your pi. If you’ve followed along so far this will be /usr/share/nginx/html.

03 Navigate to _site locations

Right-click on your local _site directory and select upload

If you struggle with this due to something like a directory or permissions error, it may be best to ssh onto your pi and create the directory manually, before returning and attempting to upload again:

ssh pi@<your-pis-ip-address>
mkdir /usr/share/nginx/html/_site

04 Right-click and upload

If this is the first time you have done this, the files should upload ok. If you’ve already uploaded before, you will be presented with an overwrite warning. In this case, select overwrite if newer and apply to this queue only.

Your site should now be uploaded onto your pi and in the correct area for serving.