我正在运行ubuntu,我想将请求从端口80转发到另一个端口,即8069,我正在运行我的openerp服务器......
我需要什么规则或bash脚本来解决这个问题?
答案 0 :(得分:5)
是的,您所指的是一个反向代理,您可以使用Nginx轻松设置一个
首先,安装Nginx
sudo apt-get install nginx
然后启动Nginx
sudo service nginx start
访问您服务器的IP地址,看看它是否有效。 如果您看到"欢迎使用nginx!",那么您就走在了正确的轨道上
删除Nginx默认配置
sudo rm /etc/nginx/sites-enabled/default
然后
sudo service nginx restart
再次访问您服务器的IP地址。 这一次,您应该看到" 503 Bad Gateway"。没关系,这就是你想要的东西
接下来,制作一个新文件
sudo nano /etc/nginx/conf.d/openerp.conf
将其粘贴到其中,替换" yourhostname.com"使用您服务器的主机名(或者您将在此处投放的域名,如果您将其放在网络上)
#worker_processes 1;
#events {
# worker_connections 1024;
#}
server {
listen 80;
server_name yourhostname.com;
location /socket.io {
proxy_pass http://127.0.0.1:8068;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
}
location / {
proxy_pass http://127.0.0.1:8069;
}
}
重新启动Nginx
sudo service nginx restart
现在再次访问您服务器的IP地址。如果您获得了OpenERP登录屏幕,那么您就可以了!如果没有,请检查控制台是否有任何错误,启动nginx,修复/etc/nginx/conf.d/openerp.conf,然后重试