2015-11-11 40 views
1

當我發現角度未能加載net::ERR_CONTENT_LENGTH_MISMATCH時,問題開始了。net :: ERR_CONTENT_LENGTH_MISMATCH on nginx 1.8.0

全部錯誤的列表:

GET http://xyx.com/assets/angular/angular.js?body=1 net::ERR_CONTENT_LENGTH_MISMATCH 
Uncaught ReferenceError: angular is not defined(anonymous function) @ angular-cookie.js?body=1:7 
Uncaught ReferenceError: angular is not defined(anonymous function) @ ui-bootstrap-tpls.js?body=1:9 
Uncaught TypeError: Cannot read property 'isDefined' of undefined(anonymous function) @ angular-ui-router.js?body=1:19(anonymous function) @ angular-ui-router.js?body=1:4340 
Uncaught ReferenceError: angular is not defined(anonymous function) @ ng-optimizely.js?body=1:1 
Uncaught TypeError: Cannot read property '$$minErr' of undefined(anonymous function) @ angular-resource.js?body=1:9(anonymous function) @ angular-resource.js?body=1:628 
Uncaught ReferenceError: angular is not defined 

我做了一些研究導致我檢查Nginx的錯誤日誌。日誌產生以下錯誤:

2015/11/11 16:26:31 [crit] 39125#0: *255 open() "/usr/local/var/run/nginx/proxy_temp/4/00/0000000004" failed (13: Permission denied) while reading upstream, client: x.x.x.x, server: xyx.com, request: "GET /assets/angular/angular.js?body=1 HTTP/1.1", upstream: "http://x.x.x.x:9090/assets/angular/angular.js?body=1", host: "xyz.com", referrer: "url_here"

我發現了一個post那也有類似的問題。但是,刪除目錄的內容並重新啓動nginx並不能解決問題。

我還驗證了nginx工作進程正在由/usr/local/var/run/nginx/proxy_temp目錄的同一個所有者運行,正如另一個post(用戶沒有人)所述。將權限更改爲777也無效。

此問題發生在我的開發環境中。我在El Capitan(10.11.1)和nginx版本1.8.0上使用Mac。任何援助與此將不勝感激。

nginx的配置文件:

server { 
    listen 80; 

    server_name www.local.site.com; 
    return 301 https://local.site.com$request_uri; 
} 

server { 
    listen 80; 
    server_name local.sell.site.com; 

    location/{ 
    proxy_pass http://x.x.x.x:9090; 
    } 
} 

server { 
    listen 443; 
    server_name local.sell.site.com; 

    ssl on; 
    ssl_certificate /Users/sheldon/Repos/site/config/nginx/ssl/site.crt; 
    ssl_certificate_key /Users/sheldon/Repos/site/config/nginx/ssl/site.key; 
    ssl_session_timeout 5m; 
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    ssl_ciphers "[Removed]"; 
    ssl_prefer_server_ciphers on; 


    location/{ 
    proxy_pass http://x.x.x.x:9090; 
    } 
} 

server { 
    listen 443; 

    root /Users/sheldon/Repos/site/www; 
    index index.php; 
    server_name local.site.com; 
    access_log /Users/sheldon/logs/nginx/local.site.com.access.log; 
    error_log /Users/sheldon/logs/nginx/local.site.com.error.log; 

    ssl on; 
    ssl_certificate /Users/sheldon/Repos/site/config/nginx/ssl/site.crt; 
    ssl_certificate_key /Users/sheldon/Repos/site/config/nginx/ssl/site.key; 
    ssl_session_timeout 5m; 
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    ssl_ciphers "[Removed]"; 
    ssl_prefer_server_ciphers on; 

    large_client_header_buffers 4 8m; 

    location ~* (.+)\.(\d+)\.(js|css|png|jpg|jpeg|gif)$ { 
    try_files $uri $1.$3; 
    } 

    location/{ 
     index index.html index.php; 
     try_files $uri $uri/ @handler; 
     expires 30d; 
    } 

    location ^~ /media/downloadable/ { deny all; } 

    location /. { 
     return 404; 
    } 

    location @handler { 
     rewrite//index.php; 
    } 

    location ~ .php/ { 
     rewrite ^(.*.php)/ $1 last; 
    } 

    location ~ \.php$ { 
     if (!-e $request_filename) { 
     rewrite//index.php last; 
     } 
     expires off; 
     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass unix:/tmp/php5-fpm.sock; 
     fastcgi_index index.php; 
     fastcgi_intercept_errors on; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     fastcgi_param MAGE_RUN_TYPE store; 
     fastcgi_param ENVIRONMENT dev; 
     fastcgi_param MAGE_IS_DEVELOPER_MODE true; 
     fastcgi_buffer_size 128k; 
     fastcgi_buffers 4 256k; 
     fastcgi_busy_buffers_size 256k; 
     fastcgi_read_timeout 420; 
     include fastcgi_params; 
    } 

    location /api { 
     rewrite ^/api/rest /api.php?type=rest; 
    } 
} 

回答

0

你必須也給予了足夠的權限,在其下的nginx運行到承載您的上游http://x.x.x.x:9090,並且具有部署的源代碼目錄的用戶。

+0

我在本地運行nginx,並試圖將包含此項目源代碼的所有文件和目錄更改爲nobody用戶。做完這些並重新啓動nginx後,我仍然遇到同樣的問題。你有什麼想法還有什麼可能是錯的? –

+0

你會分享你的Nginx的配置文件..你可以把它放在問題的身體本身 – msoliman

+0

我已經添加了有問題的網站的Nginx配置。請有空看看。 @msoliman –

相關問題