Hosting a new web-service requires 2 steps:
- Create a new virtual host on nginx
- Create a systemd service, so that the web-service can start automatically on server restart.
Setup virtual host on nginx
> cd /var/www/frp
> nano frp.smurfpandey.me.conf
server { listen 80; listen [::]:80; server_name comments.smurfpandey.me; root /var/www/html; location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_pass http://127.0.0.1:7500; } location ~ /.well-known { allow all; } client_max_body_size 50m; }
> sudo ln -s /var/www/frp/frp.smurfpandey.me.conf /etc/nginx/sites-available/frp.smurfpandey.me.conf
> sudo ln -s /etc/nginx/sites-available/frp.smurfpandey.me.conf /etc/nginx/sites-enabled/frp.smurfpandey.me.conf
> sudo service nginx reload
Create systemd service
> sudo nano /lib/systemd/system/frps.service
[Unit]Description=Frp Server Service After=network.target
[Service] Type=simple User=nobody Restart=on-failure RestartSec=5s ExecStart=/var/www/frp/frps -c /var/www/frp/frps.ini
[Install] WantedBy=multi-user.target
> sudo systemctl start frps
> sudo systemctl status frps
> sudo systemctl enable frps