I have Raspberry Pi 2 from my friend, and set it up already. I haven’t write post for setting up the RPi, but there are tons of tutorials. You can refer to them to setup the RPi.
In this post I will write how to configure Nginx for new subdomain for myself to remember.
1. Prerequisites
- Setup RPi
- Install Nginx on RPi
- Configure Nginx
- Any project to test(React Project on your Development Machine)
2. Create New sites-available
First, let’s see what you have on your rpi. cd /etc/nginx/sites-available
then ls
to see what you have there.
In my case, I have default and jisoo. Now, I will create new one for new domain. It would be better to copy the default or already existing one, so you don’t have to write the whole configuration.
sudo cp default my-app
default can be replaced with whatever you have, and my-app can be replaced with whatever you want to call for new file/subdomain name. my case, I do sudo cp jisoo practice
Now, sudo nano practice
, in my case, and edit the configuration. There are only two things to edit. the root and the server_name.
ctrl+o to save the file and ctrl+x to exit the nano.
3. Create a symlink in the sites-enabled
Most of tutorials I have searched didn’t do this, but I guess this needs to be done to enable the configuration in sites-available. And actually, I have tested without a symlink created, and it was not working. so… run below command to create a symlink.
sudo ln -s /etc/nginx/sites-available/practice
/etc/nginx/sites-enabled/practice
You need to replace practice to whatever your folder name.
Then, reload the nginx by either sudo systemctl reload nginx
or sudo service nginx reload
4. Create the Root Folder
Create new folder for the targeted root folder.
5. Deploy to RPi
Now, you can deploy your project to RPi. In case, you created react project for test, you can easily just copy paste the build folder using scp command. See Deploy to RPi without using git
That’s it! I can see the new site running fine! 🙂