I have the exact same access_log directive in my catchall host config. It works. Perhaps the user under which nginx is running doesn't have write permission to /var/log/nginx on your file system.