Notes: Host a new web service on linux
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