Nginx下Symfony2配置教程详解

1,首先开启Nginx的pathinfo

如果你的主机上安装了AMH,那么恭喜你,配置就容易了。先安装“AMPathinfo”模块,然后在这个模块的列表上,开启你网站的pathinfo

 

 

如果你的主机上没有安装AMH,也不用着急,开启pathinfo,其实就是添加了两行配置代码

fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
不知道怎么添加吗?别急,下面会告诉你

 

2,主配置文件

在每个nginx的站点下,都有一个主配置文件,他们都放在/alidata/server/nginx/conf/vhosts下面(你的路径可能和我的不一样,输入命令”nginx -t”可以查看),现在晒出主配置文件

server {
        listen       80;
        server_name  www.111cn.net; #主机域名,不要说不认识
        index index.html index.htm index.php app.php; #默认的主文件,我自己加了app.php
 
        set $subdomain '';
        root /alidata/www/sample/web; #网站代码的磁盘物理路径,注意symfony的根目录是web
        include rewrite/symfony2.conf; #rewrite end # 这个是引入symfony相关的配置
 
        location ~ \.php(/.*)?$
       {
                #fastcgi_pass  unix:/tmp/php-cgi.sock;
                fastcgi_pass  127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_split_path_info ^(.+\.php)(.*)$; #pathinfo的关键配置
                fastcgi_param PATH_INFO $fastcgi_path_info;  #pathinfo的关键配置
                include fastcgi.conf;
        }
 
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
                expires 30d;
        }
        location ~ .*\.(js|css)?$ #js,css的文件缓存时间
        {
                expires 1h;
        }
 
        access_log  /alidata/log/nginx/access/sample.log; #报错日志
}
~
3,Symfony有关的配置

这是我自己摸索出来的, symfony官网上也有nginx的配置说明,我试了,没有看懂,也没有成功。还记得上一段配置中有一句是include rewrite/symfony2.conf吗,现在就来贴出这个配置文件

location / {
        index app.php;
        try_files $uri @rewriteapp;
    }
 
location @rewriteapp {
        rewrite ^(.*)$ /app.php/$1 last;
    }
你看代码不是很多吧,真正有关symfony的配置就是这些。记得要把这份配置文件放在rewrite文件夹下

时间: 2024-12-21 23:51:23

Nginx下Symfony2配置教程详解的相关文章

nginx下gzip配置参数详解_nginx

Nginx自带的有gzip模块 http://wiki.nginx.org/NginxChsHttpGzipModule ,这个模块支持在线实时压缩输出数据流.经过良好的配置优化,可以大幅的提升网站的输出效率. __使用范例__ 复制代码 代码如下: gzip on; gzip_min_length 1000; gzip_proxied expired no-cache no-store private auth; gzip_types text/plain application/xml; 内

mysql 5.7 zip 文件在 windows下的安装教程详解_Mysql

1.下载mysql最新版本. http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.15-winx64.zip 2.解压到文件夹. D:\software\mysql\mysql5.7a 将my-default.ini 复制为 my.ini 3.编辑my.ini # These are commonly set, remove the # and set as required. basedir ="D:/software/mysql/mysql

Linux下安装Redis教程详解

安装Reids   Redis下载地址:http://www.redis.io/download # wget http://download.redis.io/releases/redis-2.8.13.tar.gz # cd redis-2.8.13/ # make zmalloc.o: In function `zmalloc_used_memory': /usr/local/webserver/redis-2.8.13/src/zmalloc.c:226: undefined refer

Bootstrap 4 的安装与配置教程详解

Bootstrap 4 刚刚发布了预览版,离正式版还有一段时间.不过现在我们已经可以使用 Bootstrap 4 了,看看里面有什么新东西. 最简单的方法就是使用 Bootstrap 的 CDN ,把需要的样式表与 JS 文件链接到网页上,不过这样你不能去编辑 Bootstrap ,比如去定制里面的一些选项.下面我们使用 Git 去克隆一份 Bootstrap 仓库到本地. # 进入到桌面 cd ~/desktop # 为项目创建目录并进入这个目录 mkdir ninghao-bootstrap

nginx rewrite 伪静态配置参数详解

经过网上查阅和测试,发现Nginx的Rewrite规则和Apache的Rewite规则差别不是很大,几乎可以直接使用.比如在Apache中这样写规则  代码如下 复制代码 rewrite ^/([0-9]{5}).html$ /viewthread.php?tid=$1 last; 而在Nginx中写成这样写是无法启动的,解决的办法是加上两个双引号:  代码如下 复制代码 rewrite "^/([0-9]{5}).html$" /viewthread.php?tid=$1 last;

Nginx负载均衡配置实例详解

负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法.   测试环境 测试域名  :www.threegroup.space A服务器IP :123.56.255.173 (主) B服务器IP :101.200.159.138 C服务器IP :123.56.255.53   部署思路A服务器做为主服务器,域名直接解析到A服务器(123.56.255.173)上,由A服务器负载均衡到B服务器(101.200.159.138)与C服务器(123.56.2

PHP 7 的编译安装配置教程详解

php 的编译安装相当简单,且每个版本差异不大,正因为如此之前版本的编译安装过程也可以参考,当然,需要注意的是,每个版本的编译参数存在部分差异,以 ./configure --help 中具体描述的编译配置参数为准. 本文中系统环境为 CentOS 7 64bit,如使用其他系统环境的,请注意在某些 依赖安装环节 的差异. 准备工作 对于 CentOS ,yum 我向来是用作安装大批量依赖的工具,所以,一股脑安装这些依赖库吧. yum install -y gcc gcc-c++ autocon

Nginx安装与使用教程详解_nginx

前言 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好.(百度百科- http://www.dwz.cn/x32kG) 1.Nginx安装 我使用的环境是64位 Ubuntu 14.04.ngin

Nginx用户认证配置方法详解(域名/目录)_nginx

Nginx可以为某一个域名单独加用户认证,具体做法如下: 1. 生成用户认证的用户名和密码: 复制代码 代码如下: #wget -c soft.vpser.net/lnmp/ext/htpasswd.sh;bash htpasswd.sh 根据提示输入: 用户名:密码:文件名: 脚本会自动生成认证文件,auth.conf内容如下: 复制代码 代码如下: /usr/local/nginx/conf/auth.conf 2. 为Nginx添加auth认证配置 下面以某域名下面的auth目录为例,在域