来源: https://www.xp.cn/b.php/79706.html

Symfony2在Nginx下的配置方法图文教程


本文详细讲述了Symfony2在Nginx下的配置方法。分享给大家供大家参考,具体如下:

网上有很多关于symfony2在nginx下的配置文章,如果是小白,按照网上贴出来的配置文件配置,却怎么也不成功,我经过多次摸索,写下心得:

1. 首先开启Nginx的pathinfo

至于什么是pathinfo,可以参考文章《nginx下支持PATH_INFO的方法实例详解》,自行脑补。很多人按照教程配置的时候,会报500的错误,查报错日志也查不出来,八成就是没有开启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.sample.com; #主机域名,不要说不认识
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文件夹下

本文永久地址:http://blog.it985.com/8147.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。

更多关于PHP框架相关内容感兴趣的读者可查看本站专题:《php优秀开发框架总结》,《codeigniter入门教程》,《CI(CodeIgniter)框架进阶教程》,《Yii框架入门及常用技巧总结》及《ThinkPHP入门教程》

希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。

最新文章

  1. strstr 函数的实现
  2. 网页qq客服代码并自定义图片
  3. JsRender实用教程(tag else使用、循环嵌套访问父级数据)
  4. android ANR问题
  5. HDU 1269 迷宫城堡 (强连通分量,常规)
  6. compass sprite
  7. FreeRTOS学习笔记——任务间使用队列同步数据
  8. android 百度最新地图sdk包怎么去除 放大缩小按钮
  9. 在Web Api中快速实现JSonp
  10. 内存泄露检測及cvClone造成的泄露
  11. 201521123044 《Java程序设计》第11周学习总结
  12. snowflake 分布式唯一ID生成器
  13. Android app去掉https签名校验
  14. vue动态切换组件
  15. Edge-assisted Traffic Engineering and applications in the IoT
  16. redis学习(九)——数据持久化
  17. 一次python 内存泄漏解决过程
  18. django----数据库表设计
  19. Git项目下载部分文件或文件夹
  20. bg和fg命令

热门文章

  1. Nacos集群搭建(三个节点)
  2. Postgresql之闪回数据库示例
  3. python的常见问题解决
  4. pycharm取消代码长度的竖线
  5. vue开发中,数据更新,但视图不刷新
  6. 【C学习笔记】day3-2 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值。
  7. csp201503-2(数字排序)
  8. el-table多选框根据条件隐藏显示
  9. 【27期】Dubbo面试八连问,这些你都能答上来吗?
  10. redis底层数据结构之简单动态字符串(SDS)