Symfony2在Nginx下的配置方法圖文教程
本文詳細講述了Symfony2在Nginx下的配置方法。分享給大家供大家參考,具體如下:
網(wǎng)上有很多關(guān)于symfony2在nginx下的配置文章,如果是小白,按照網(wǎng)上貼出來的配置文件配置,卻怎么也不成功,我經(jīng)過多次摸索,寫下心得:
1. 首先開啟Nginx的pathinfo
至于什么是pathinfo,可以參考文章《nginx下支持PATH_INFO的方法實例詳解》,自行腦補。很多人按照教程配置的時候,會報500的錯誤,查報錯日志也查不出來,八成就是沒有開啟pathinfo。
如果你的主機上安裝了AMH,那么恭喜你,配置就容易了。先安裝“AMPathinfo”模塊,然后在這個模塊的列表上,開啟你網(wǎng)站的pathinfo
如果你的主機上沒有安裝AMH,也不用著急,開啟pathinfo,其實就是添加了兩行配置代碼
fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_INFO $fastcgi_path_info;
不知道怎么添加嗎?別急,下面會告訴你
2. 主配置文件
在每個nginx的站點下,都有一個主配置文件,他們都放在/alidata/server/nginx/conf/vhosts下面(你的路徑可能和我的不一樣,輸入命令”nginx -t”可以查看),現(xiàn)在曬出主配置文件
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; #網(wǎng)站代碼的磁盤物理路徑,注意symfony的根目錄是web include rewrite/symfony2.conf; #rewrite end # 這個是引入symfony相關(guān)的配置 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的關(guān)鍵配置 fastcgi_param PATH_INFO $fastcgi_path_info; #pathinfo的關(guān)鍵配置 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有關(guān)的配置
這是我自己摸索出來的, symfony官網(wǎng)上也有nginx的配置說明,我試了,沒有看懂,也沒有成功。還記得上一段配置中有一句是include rewrite/symfony2.conf嗎,現(xiàn)在就來貼出這個配置文件
location / { index app.php; try_files $uri @rewriteapp; } location @rewriteapp { rewrite ^(.*)$ /app.php/$1 last; }
你看代碼不是很多吧,真正有關(guān)symfony的配置就是這些。記得要把這份配置文件放在rewrite文件夾下
本文永久地址:http://blog.it985.com/8147.html
本文出自 IT985博客 ,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。
更多關(guān)于PHP框架相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php優(yōu)秀開發(fā)框架總結(jié)》,《codeigniter入門教程》,《CI(CodeIgniter)框架進階教程》,《Yii框架入門及常用技巧總結(jié)》及《ThinkPHP入門教程》
希望本文所述對大家基于Symfony框架的PHP程序設(shè)計有所幫助。
- Symfony2學(xué)習(xí)筆記之系統(tǒng)路由詳解
- 高性能PHP框架Symfony2經(jīng)典入門教程
- Symfony2使用Doctrine進行數(shù)據(jù)庫查詢方法實例總結(jié)
- Symfony2實現(xiàn)從數(shù)據(jù)庫獲取數(shù)據(jù)的方法小結(jié)
- Symfony2之session與cookie用法小結(jié)
- Symfony2創(chuàng)建頁面實例詳解
- Symfony2安裝第三方Bundles實例詳解
- Symfony2聯(lián)合查詢實現(xiàn)方法
- Symfony2實現(xiàn)在controller中獲取url的方法
- Symfony2 session用法實例分析
- Symfony2創(chuàng)建基于域名的路由相關(guān)示例
相關(guān)文章
PHP imagegrabscreen和imagegrabwindow(截取網(wǎng)站縮略圖)的實例代碼
PHP5.2.2以上版本的GD庫實現(xiàn)了兩個截屏函數(shù) imagegrabscreen 和 imagegrabwindow ,分別用于截取整個屏幕和截取某個窗口(同ALT+PrintScreen)的屏幕2013-11-11Laravel5.1 框架模型一對一關(guān)系實現(xiàn)與使用方法實例分析
這篇文章主要介紹了Laravel5.1 框架模型一對一關(guān)系實現(xiàn)與使用方法,結(jié)合實例形式分析了laravel5.1框架模型一對一關(guān)系的原理、定義與使用方法,需要的朋友可以參考下2020-01-01Codeigniter整合Tank Auth權(quán)限類庫詳解
相交其他CodeIgniter的類庫,tank_auth,配置簡單,使用也簡單,并且作者也一直在更新。這篇文章主要介紹了Codeigniter整合Tank Auth權(quán)限類庫詳解,需要的朋友可以參考下2014-06-06php發(fā)送get、post請求的6種方法簡明總結(jié)
這篇文章主要介紹了php發(fā)送get、post請求的6種方法簡明總結(jié),分別為使用file_get_contents 、fopen、fsockopen、curl來發(fā)送GET和POST請求,需要的朋友可以參考下2014-07-07ThinkPHP結(jié)合AjaxFileUploader實現(xiàn)無刷新文件上傳的方法
這篇文章主要介紹了ThinkPHP結(jié)合AjaxFileUploader實現(xiàn)無刷新文件上傳的方法,是ThinkPHP文件上傳中一個比較典型的應(yīng)用技巧,非常具有實用價值,需要的朋友可以參考下2014-10-10