2016-08-16 10 views
1

であるためCSSが読み込まれませんでした。mgin.typesが含まれていて、CSSファイルにアクセスしようとするとエラーが発生します。私は "/etc/nginx/mime.typesインクルード"を挿入しようとしました。 "location /"にあるが動作しなかった。MIMEタイプが

これは私のnginx.confです:

user www-data; 
worker_processes 4; 
pid /run/nginx.pid; 

events { 
    worker_connections 768; 
    # multi_accept on; 
} 

http { 
server_names_hash_bucket_size 64; 
upstream test_server { 
    server unix:/var/www/test/run/gunicorn.sock fail_timeout=10s; 
} 

server { 
    listen 80; 
    server_name ec2-#-#-#-#.sa-east-1.compute.amazonaws.com; 

    client_max_body_size 4G; 

    access_log /var/www/test/logs/nginx-access.log; 
    error_log /var/www/test/logs/nginx-error.log warn; 

    location /static/ { 
      autoindex on; 
     alias /var/www/test/my-example/static/; 
      include /etc/nginx/mime.types; 
    } 

    location /media/ { 
     autoindex on; 
     alias /var/www/test/my-example/media/; 
    } 

    location/{ 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header Host $http_host; 
     proxy_redirect off; 

     if (!-f $request_filename) { 
      proxy_pass http://test_server; 
      break; 
     } 
    } 

    #For favicon 
    location /favicon.ico { 
     alias /var/www/test/test/static/img/favicon.ico; 
    } 
    #For robots.txt 
    location /robots.txt { 
     alias /var/www/test/test/static/robots.txt ; 
    } 
    # Error pages 
    error_page 500 502 503 504 /500.html; 
    location = /500.html { 
     root /var/www/test/my-example/static/; 
    } 
} 

} 

そして、私のhtmlの頭:

<link rel="stylesheet" type="text/css" href="../static/css/bootstrap.css"> 
    <link rel="stylesheet" type="text/css" href="../static/css/combo.css"> 
    <link rel="stylesheet" type="text/css" href="../static/css/font-awesome.min.css"> 
    <link rel='stylesheet' type="text/css" href="../static/css/raleway.css"> 

しかし、私はこのエラーを持つ保つ:

was not loaded because its MIME type, "text/plain", is not "text/css"

+0

可能な複製を配置する別の方法(http://stackoverflow.com/questions/10075304/nginx-fails-to- load-css-files) –

+0

あなたのhtmlページのアドレスは? – VBart

+0

@ J.Titus「私はmime.typesを含んでいますか?」と言いましたか? –

答えて

2

配置するのが一般的です外側のhttp { ... }ブロック内のinclude mime.types;ブロック内ではなく、location { ... }ブロック内すべてのブロックとすべての場所でserver { ... }ブロックに継承されています。

お客様のhref="../static/css/の文は相対的なものなので、提供された情報から、location /static/ブロックまたはlocation /ブロックでURIが処理されているかどうかを判断することはできません。

必要はありませんroot(またはaliaslocation /ブロック用に定義され、そのif (!-f $request_filename)文の偽条件は、おそらく常にあなたがserver { ... }ブロックにroot /var/www/test/my-exampleを設定することをお勧めします404

で失敗すると、 locationブロックによって継承されるようにします。 の使用は、rootを使用することはできません。this documentを参照してください。

CSSファイルがproxy_pass http://test_server;で配信されている場合は、MIMEタイプを修正するには間違った場所です。

0

それは/etc/nginx/mime.typesを変更している行うと、[nginxのは、CSSファイルをロードするために失敗した]の

types { 
    .... 
    text/css  css plain; 
    .... 
    }