Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用nginx在子目录上运行etherpad lite_Node.js_Nginx_Subdirectory_Referenceerror_Etherpad - Fatal编程技术网

Node.js 使用nginx在子目录上运行etherpad lite

Node.js 使用nginx在子目录上运行etherpad lite,node.js,nginx,subdirectory,referenceerror,etherpad,Node.js,Nginx,Subdirectory,Referenceerror,Etherpad,我在服务器上运行etherpad lite 1.5.7。可以通过http:\\myserver:9001访问它,但我想通过http:\\myserver\pad访问它 我是这样配置nginx的 location /pad { rewrite /pad/(.*) /$1 break; rewrite ^/pad$ /pad/ permanent; proxy_pass http://localhost:9001/; proxy_pass_header Server;

我在服务器上运行etherpad lite 1.5.7。可以通过http:\\myserver:9001访问它,但我想通过http:\\myserver\pad访问它

我是这样配置nginx的

location /pad {
    rewrite /pad/(.*) /$1 break;
    rewrite ^/pad$ /pad/ permanent;
    proxy_pass http://localhost:9001/;
    proxy_pass_header Server;
    proxy_redirect / /pad/;
    proxy_set_header Host $host;
    proxy_buffering off;
}

location /pad/socket.io {
    rewrite /pad/socket.io/(.*) /socket.io/$1 break;
    proxy_pass http://localhost:9001/;
    proxy_redirect / /pad/;
    proxy_set_header Host $host;
    proxy_buffering off;
    proxy_set_header X‐Real‐IP $remote_addr; # http://wiki.nginx.org/HttpProxyModule
    proxy_set_header X‐Forwarded‐For $remote_addr; # EP logs to show the actual remote I
    proxy_set_header Host $host; # pass the host header
    proxy_http_version 1.1; # recommended with keepalive connections
    # WebSocket proxying ‐ from http://nginx.org/en/docs/http/websocket.html
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
 }

location /static {
    rewrite /static/(.*) /static/$1 break;
    proxy_pass http://localhost:9001/;
    proxy_set_header Host $host;
    proxy_buffering off;
}
但是当打开一个pad时,我在日志文件中发现了以下错误

^[[33m[2016-03-06 13:05:15.308] [WARN] client - ^[[39mUncaught ReferenceError: io is not defined -- { errorId: 'BCdMZzVXqx5Df5TwGUz5',
msg: 'Uncaught ReferenceError: io is not defined',
url: 'https://myserver/pad/p/Testpad',
linenumber: 232,
userAgent: 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36' }
火狐说

https://myserver/pad/socket.io/socket.io.js Failed to load resource: the server responded with a status of 502 (Bad Gateway)
pad.js?callback=require.define:232 Uncaught ReferenceError: io is not defined
管理面板无法显示设置文件或插件


谢谢你的帮助

我刚刚安装了以下软件,所以它还没有经过测试。这假设您在https下运行Etherpad lite,并使用nginx反向代理到localhost

location /pad/ {
    proxy_pass http://localhost:9001;
    rewrite /pad(/.*)$ $1 break;
    proxy_redirect off;
    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_http_version      1.1;
    proxy_connect_timeout   90;
    proxy_send_timeout      90;
    proxy_read_timeout      90;
    proxy_buffers           32 4k;
    proxy_intercept_errors  on;
}
location /pad { rewrite /pad /pad/ permanent; }
location /static/ { include /etc/nginx/proxy_conf; proxy_pass http://localhost:9001/static/ ;}