33 lines
1.3 KiB
PHP
33 lines
1.3 KiB
PHP
<?php
|
|
if(($_GET['k']??'')!=='WEVADS2026') die('auth');
|
|
// Add nginx proxy for paperclip at paperclip.weval-consulting.com
|
|
$conf="/etc/nginx/sites-available/paperclip.weval-consulting.com";
|
|
if(!file_exists($conf)){
|
|
$nginx='server {
|
|
listen 443 ssl http2;
|
|
server_name paperclip.weval-consulting.com;
|
|
ssl_certificate /etc/letsencrypt/live/weval-consulting.com/fullchain.pem;
|
|
ssl_certificate_key /etc/letsencrypt/live/weval-consulting.com/privkey.pem;
|
|
location / {
|
|
proxy_pass http://127.0.0.1:3100;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
}';
|
|
file_put_contents($conf,$nginx);
|
|
symlink($conf,"/etc/nginx/sites-enabled/paperclip.weval-consulting.com");
|
|
$test=exec("nginx -t 2>&1");
|
|
if(strpos($test,"successful")!==false){
|
|
exec("nginx -s reload");
|
|
echo json_encode(["ok"=>true,"nginx"=>"configured","url"=>"paperclip.weval-consulting.com"]);
|
|
} else {
|
|
unlink($conf);@unlink("/etc/nginx/sites-enabled/paperclip.weval-consulting.com");
|
|
echo json_encode(["ok"=>false,"error"=>$test]);
|
|
}
|
|
} else {
|
|
echo json_encode(["ok"=>true,"status"=>"already_configured"]);
|
|
}
|