Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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
Javascript 未获取正确的URL路径-URL路径为:/favicon.ico_Javascript_Node.js - Fatal编程技术网

Javascript 未获取正确的URL路径-URL路径为:/favicon.ico

Javascript 未获取正确的URL路径-URL路径为:/favicon.ico,javascript,node.js,Javascript,Node.js,我使用以下代码,当我第一次在浏览器中运行一些路径时,比如http://localhost:9000/aaaa/bbbb/cccc 我第一次得到/aaaa/bbb/cccc 但在第二个示例中,我得到的URL路径是:/favicon.ico 我能做些什么来克服这个问题 url = require('url'); .... http.createServer(function(req, res) { var hostname = req.headers.host.split(

我使用以下代码,当我第一次在浏览器中运行一些路径时,比如
http://localhost:9000/aaaa/bbbb/cccc

我第一次得到/aaaa/bbb/cccc 但在第二个示例中,我得到的URL路径是:/favicon.ico

我能做些什么来克服这个问题

 url = require('url');
....
    http.createServer(function(req, res) {
        var hostname = req.headers.host.split(":")[0];
        var pathname = url.parse(req.url).pathname;

        console.log("Host name: " + hostname);
        console.log("URL path is: " + pathname);

阻止浏览器从默认位置请求favicon的唯一方法是在您提供的HTML文档中为其指定一个显式位置

<link rel="shortcut icon" href="URL HERE"> 

  • 如果节点前面有nginx,请添加
    location=/favicon.ico{access\u log off;log\u not\u found off;}
    到配置文件
  • 从节点开始发球

    if (req.url === '/favicon.ico') {
        res.writeHead(200, {'Content-Type': 'image/x-icon'} );
        return res.end();
    }
    
  • 按照昆汀的建议,从html链接favicon


  • 但是,有些浏览器会要求使用favicon,例如,在选项卡中打开PDF。。。最好直接在服务器配置中处理/favicon.ico。谢谢,但没有任何UI。我只是从浏览器向节点服务器提交呼叫…谢谢,但我不使用任何nginx,只是普通的nodeJS应用程序,它可以收听http呼叫…编辑,给它一个tryCool。忠告一句,我不会在生产中这样做。如果您只是尝试一下,它很好。感谢为什么我应该在生产中使用它,以及为什么您使用res.end()?,提前感谢!在生产中,它的标准实践和建议将nginx放在节点的前面,以提供静态文件
    res.end
    发送标记该请求结束的标题。