【发布时间】:2015-07-20 13:13:48
【问题描述】:
不确定这是否真的被称为代理 这是我所拥有的:
server {
listen 80;
listen mckelvey.me:1122
server_name mckelvey.me
location / {
/personal-website
}
}
我的网站位于 mckelvey.me:1122 我希望我的网站位于 mckelvey.me。 我不知道该怎么做。 ip 是 104.131.153.117 并且节点应用程序位于 /home/deploy ,而我有一个名为 deploy.tar 的文件,其中包含该网站。它在 mckelvey.me:1122 上完美运行
这是我用来部署网站的 bash 脚本:
#! /usr/bin/env bash
set -e
remote_deploy_dir=/srv/personal_website
remote_host=mckelvey.me
remote_user=deploy
remote_port=22
echo
echo Compressing codebase for push
tar c -f deploy.tar --exclude deploy.tar .
echo
echo Uploading codebase
scp -P $remote_port deploy.tar $remote_user@$remote_host:.
rm deploy.tar
ssh -T -p $remote_port $remote_user@$remote_host <<END_SSH_COMMANDS
set -o xtrace
echo
echo Creating $remote_deploy_dir
sudo mkdir -p $remote_deploy_dir
cd $remote_deploy_dir
echo
echo Stopping old site instace
forever stop index.js || echo no old instance found
echo
echo Extracting codebase
sudo tar xf ~/deploy.tar -C .
echo
echo Starting new site instance
forever start index.js
END_SSH_COMMANDS
【问题讨论】:
-
如果我需要添加任何内容以使其更有帮助,我可以,只需评论或编辑。
-
您能否提供您尝试为反向代理设置的 nodejs 应用程序的配置?它运行的IP和端口?我希望 mckelvey.me 的请求能够访问 nodejs 应用程序,对吗?
-
@NomanUrRehman 更新了问题。怎么样?这是你的意思吗?我还添加了用于部署我的网站的 bash 脚本。
-
没有。 nodejs 应用程序使用 ip 和端口在您的服务器上独立运行,然后您在其前面设置一个 nginx 代理以将请求重定向到您的 nodejs 应用程序。这就是你最后的设置方式吗?
-
@NomanUrRehman nodejs 在端口 1122 上运行,我相信其 IP 地址为 104.131.153.117,输出为 mckelvey.me:1122。如果我仍然不理解,我对此很陌生。哦,等一下,它可能是端口 22,因为我的 bash 脚本:
remote_port=22