Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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
nginx代理传递到目录_Nginx - Fatal编程技术网

nginx代理传递到目录

nginx代理传递到目录,nginx,Nginx,我正在尝试为wordpress安装iPad,首先需要在yourdomain.com/etherpad/中安装etherpad。我已经正确安装了etherpad,当我通过ssh端口转发直接连接到它时,它正在工作。但当我在nginx中重新配置虚拟主机以添加: location /etherpad/ { proxy_pass http://localhost:9001/; proxy_set_header Host $host; proxy_buffering off; 然后,当我直接

我正在尝试为wordpress安装iPad,首先需要在yourdomain.com/etherpad/中安装etherpad。我已经正确安装了etherpad,当我通过ssh端口转发直接连接到它时,它正在工作。但当我在nginx中重新配置虚拟主机以添加:

location /etherpad/ {
proxy_pass http://localhost:9001/;
proxy_set_header    Host $host;
proxy_buffering     off;
然后,当我直接连接到css文件时,我无法加载css文件以及其他可以在/static/custom/index.css下找到的文件,但是通过nginx我得到了404。因此,我可以加载索引页面,但没有css(我猜javascript也不起作用,甚至还没有尝试过。)


我习惯于使用nginx代理/而不是文件夹。我错过了什么?

像这样在/etc/nginx/sites enabled/default或nginx.conf中定义js和css的位置块,以系统上的位置为准

    location ~ \.js$ {
    root /pathtoJSFiles;
    }       

    location ~ \.css$ {
    root /pathtoCSSFiles;
    }       

如果您已经完成了我在回答中所写的操作,但仍然无法工作,那么请粘贴nginx日志的最后几个条目,默认情况下,这些条目位于/var/log/nginx/error.log&/var/log/nginx/access.log中。我在ubuntu上。我不确定~\.js$和.css$将在哪里查找。您能提供更多详细信息吗?如果它是通用的,我就不能使用它,因为我已经在同一个域上安装了wordpress。在相关的服务器块中添加这些位置块粘贴error.log和access.log的最后几行,这将告诉服务器在哪里寻找.js和.csw。例如,我不确定你正在使用location~\.js$做什么。它是否捕获所有.js请求并在指定的路径中查找相应的文件?因为如果是这样的话,那么在这个服务器块中会有对.js的wordpress安装调用,并且在指定的路径中找不到js文件。你能解释一下你对这个位置声明的意图吗?是的,我的意图是相同的,但是为什么在指定的路径中找不到js文件?如果你给出的路径是正确的,那么它应该可以正常工作。请粘贴最后几行日志,正如我上面所说的。