FAQ

Page Discussion Edit History

NginxSymfony

Example configuration for symfony framework:


worker_processes  1;
error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
 
http {
    include       mime.types;
    default_type  application/octet-stream;
    client_max_body_size 10m;
    sendfile        on;
    gzip  on;
    keepalive_timeout  65;
 
}
 
server {                                                                        
        listen   80;                                                            
        server_name  www.example.org;                      
        server_tokens off;                                                      
        root   /var/www/example-org/wwwroot/web;                  
        index index.php                                                         
        access_log  /var/log/nginx/www.example.org-access_log;
        error_log  /var/log/nginx/www.example.org-error_log;  
 
        location / {
            if (-f $request_filename) {
              expires max;             
              break;                   
            }                          
 
            if ($request_filename !~ "\.(js|htc|ico|gif|jpg|png|css)$") {
              rewrite ^(.*) /index.php last;                             
            }                                                            
 
        }
 
        location /sf/ {
          root /var/www/example-org/wwwroot/lib/vendor/symfony/data/web/;
        }    
        error_page   500 502 503 504  /50x.html;                  
        location = /50x.html {                                    
                root   /var/www/nginx-default;                    
        }                                                         
 
        location ~ \.php($|/) {
        set  $script     $uri;
        set  $path_info  "";
        if ($uri ~ "^(.+\.php)(/.+)") {
          set  $script     $1;
          set  $path_info  $2;
        }
        fastcgi_pass   127.0.0.1:9000;
        include        fastcgi_params;
        fastcgi_param  PATH_INFO          $path_info;
        fastcgi_param  SCRIPT_FILENAME  /var/www/example-org/wwwroot/web$script; 
        fastcgi_param  SCRIPT_NAME       $script;
}
 
}