[symfony2在nginx]Symfony2在Nginx下的安装配置步骤

更新时间:2019-10-09    来源:Symfony    手机版     字体:

【www.bbyears.com--Symfony】

以下配置以111cn.net 作为域名,Nginx站点根目录指向Symfony2应用的web文件夹。PHP以FastCGI方式运行。

提醒 此配置仅允许web目录下app.php和app_dev.php两个入口文件以PHP脚本方式运行,web目录下存在的其他PHP文件如果被访问,将被用户下载。


server {
  listen 80;
 
  server_name 111cn.net ; # 域名
  root /var/www/symfony2/web; # 站点根目录
 
  error_log /var/log/nginx/symfony2.error.log;
  access_log /var/log/nginx/symfony2.access.log;
 
  # 如果URL中包含app.php,则转发为伪静态格式
  rewrite ^/app\.php/?(.*)$ /$1 permanent;
 
  location / {
    index app.php;
    try_files $uri @rewriteapp;
  }
 
  location @rewriteapp {
    rewrite ^(.*)$ /app.php/$1 last;
  }
 
  # 此段为将PHP请求转交给FastCGI服务,PHP-FPM是非常流行的选项。
  location ~ ^/(app|app_dev)\.php(/|$) {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
    fastcgi_param  HTTPS              off;
  }
}

以下为HTTPS配置:

server {
  listen 443;
 
  server_name 111cn.net ;
  root /var/www/symfony2/web;
 
  ssl on;
  ssl_certificate      /etc/ssl/certs/symfony2.crt;
  ssl_certificate_key  /etc/ssl/private/symfony2.key;
 
  error_log /var/log/nginx/symfony2.error.log;
  access_log /var/log/nginx/symfony2.access.log;
 
  rewrite ^/app\.php/?(.*)$ /$1 permanent;
 
  location / {
    index app.php;
    try_files $uri @rewriteapp;
  }
 
  location @rewriteapp {
    rewrite ^(.*)$ /app.php/$1 last;
  }
 
  location ~ ^/(app|app_dev)\.php(/|$) {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
    fastcgi_param  HTTPS              on;
  }
}

本文来源:http://www.bbyears.com/jiaocheng/72124.html