symfony-使用Nginx无效更新symlink静态文件

我有一个使用nginx / 1.2.6(Ubuntu 13.04 VirtualBox)运行的Symfony2.2.1项目.
硬链接可以使资产呈现正常.

使用symlink,它仅在第一次初始化时有效.
当我更新符号链接源时,浏览器渲染使用 字符转换我的修改.浏览器没有错误,没有修改的部分不会受到影响.

修改后我的CSS文件结尾的示例:

[...]

div.form-actions {
    text-align: center;
}

�����

目前,我使用硬链接.我在Apache2上没有这个问题…:/

你有个主意吗?
谢谢

Nginx站点配置:

server {
    listen 80;
    root /media/sf_NetBeansProjects/XXXX/web;
    index app.php;
    server_name XXXX.lo;

    location / {
        # try to serve file directly,fallback to rewrite
        try_files $uri @rewriteapp;
    }

    location @rewriteapp {
        # rewrite all to app.php
        rewrite ^(.*)$/app.php/$1 last;
    }

    location ~ ^/(app|app_dev)\.php(/|$) {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param HTTPS off;
    }

    error_log /media/sf_NetBeansProjects/XXXX/app/logs/nginx_errors.log;
    access_log /media/sf_NetBeansProjects/XXXX/app/logs/nginx_access.log;
}

细微之处在于media / sf_NetBeansProjects是Windows8的VirtualBox共享文件夹,但是正如我之前所说,apache2总是可以的.

最佳答案
本文帮助:

https://coderwall.com/p/ztskha

“简单地说,sendfile()使用内核调用将文件直接从磁盘复制到tcp.如果使用的是远程文件系统(例如nfs或VirtualBox Guest Additions东西),则此方法不可靠.”

本质上,如果要在主机上存在的来宾VM上提供文件,请关闭NGINX的sendfile.

“要在Apache中关闭sendfile(),可以使用EnableSendfile off指令,对于nginx,请使用sendfile off.”

相关文章

文章浏览阅读3.7k次,点赞2次,收藏5次。Nginx学习笔记一、N...
文章浏览阅读1.7w次,点赞14次,收藏61次。我们在使用容器的...
文章浏览阅读1.4k次。当用户在访问网站的过程中遇到404错误时...
文章浏览阅读2.7k次。docker 和 docker-compose 部署 nginx+...
文章浏览阅读1.3k次。5:再次启动nginx,可以正常启动,可以...
文章浏览阅读3.1w次,点赞105次,收藏182次。高性能:Nginx ...