Php nginx无法识别css和图像:资源被解释为样式表,但使用MIME类型text/html传输

Php nginx无法识别css和图像:资源被解释为样式表,但使用MIME类型text/html传输,php,nginx,webserver,mime-types,Php,Nginx,Webserver,Mime Types,我正在尝试在子目录中运行Rainloop。我知道css和js不被识别。例如: Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://babylon/webmail/rainloop/v/1.10.5.192/static/css/rainloop/v/1.10.5.192/static/css/app.min.css?standard". 我尝试了一些可能(但不起作用)的解决方案

我正在尝试在子目录中运行Rainloop。我知道css和js不被识别。例如:

Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://babylon/webmail/rainloop/v/1.10.5.192/static/css/rainloop/v/1.10.5.192/static/css/app.min.css?standard".
我尝试了一些可能(但不起作用)的解决方案:

  • nginx.conf中有“include/etc/nginx/mime.types;”
  • 有人说,php的位置搞糟了这一部分,所以我应该添加这一行:

    fastcgi_split_path_info^(.+.php)(/.+)$#这条线

  • 但它仍然不起作用

  • 我用root为css和javascript添加了新的位置,但也没有添加任何内容
  • 我的配置是:(它是一个包含的文件)


    我认为它能解决你的问题

    location ~ \.css {
        add_header  Content-Type    text/css;
    }
    location ~ \.js {
        add_header  Content-Type    application/x-javascript;
    }
    

    我对CSS和Javascript文件也有同样的问题,它们被用作
    text/html
    。在数小时内尝试了我能想到的一切,但没有任何效果后,通过重新启动Chrome自动解决了问题。

    将下面的代码块添加到相应的位置块中:

    types {
        text/css css;
    }
    

    将这两行添加到http{}

    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    
    有时需要删除

    <Document html>
    
    
    
    从html文件的顶部,一切都做得很好。
    试试看。

    @Sanan_Guliyev我现在得到了一个用于js和css文件的404。“open()”/var/www/html/rainloop/v/1.10.5.192/static/js/min/boot.min.js“失败”应该是:“/srv/rainloop/public\u html/rainloop/v/1.10.5.192/static/js/min/boot.min.js”。我已经在这两个位置中添加了根,但仍然无法修复路径。谢谢你的回答。你能解释一下为什么要添加这些吗?@AaronBell我不知道。传输一些css文件需要它们。如果不添加它们,某些css文件将无法加载,并且此错误会出现在浏览器的“检查”页面中。就我所记得的,这些行在默认的nginx配置文件(/etc/nginx/nginx.conf)中。在这个文件中,nginx还包括conf.d和sites enables目录中的所有配置文件。因此,没有必要将这些行添加到我们的nginx文件中。但是如果我们想使用自定义nginx.conf文件,我们必须添加它们。
    <Document html>