在CI框架中index.php有这么一行代码

define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');

可以通过以下几种方式设置环境变量

一、通过nginx的fastcgi_param来设置

在nginx配置文件中,可以在nginx总体的配置文件nginx.conf中,也可以在单独的网站配置环境中进行设置,如:www.tomener.com.conf

在配置环境server段location中添加相应的配置信息:

location ~ \.php($|/) {try_files         $uri =404;fastcgi_pass      unix:/tmp/php-cgi.sock;fastcgi_index     index.php;include           fastcgi_params;fastcgi_param     SCRIPT_FILENAME  $document_root$fastcgi_script_name;fastcgi_param     RUNTIME_ENVIROMENT 'PRO'; # PRO or DEV
}

这里只添加了fastcgi_param RUNTIME_ENVIROMENT 'PRO'一个值,更多可以添加在后面

然后重启重启nginx

二、通过php主配置文件php-fpm.conf来设置

这个设置必须放在主配置文件php-fpm.conf里,不能放到include指令设置的子配置文件里,否则会报错:「Array are not allowed in the global section」

我的php-fpm.conf位置在/usr/local/php/etc/php-fpm.conf

直接在配置文件中添加:

env[RUNTIME_ENVIROMENT] = 'PRO'

添加后重启php-fpm

service restart php-fpm

通过上面2种方式添加$_SERVER变量值后,我们就可以直接在php文件中通过$_SERVER来获取相应的变量值了。

不过据说配置信息通过nginx的fastcgi_param来设置的话,当nginx和php交互时,会带来大量的数据传输。

Apache设置环境变量

SetEnv 变量名 变量值
<VirtualHost *:80>ServerAdmin webmaster@demo.comDocumentRoot "e:\wwwroot\demo"ServerName my.demo.comErrorLog "logs/my.demo.com-error.log"CustomLog "logs/my.demo.com-access.log" commonSetEnv RUNTIME_ENVIROMENT DEV<Directory "e:\wwwroot\demo">Options Indexes FollowSymLinksAllowOverride AllRequire all granted</Directory>
</VirtualHost>

或在 .htaccess 文件中添加

CI框架设置ENVIRONMENT相关推荐

  1. PHP的CI框架学习

    一.前言 完全没想到新公司会使用CI框架,虽然一直听说,但是大家平时还是用laravel,yii,tp多一些,第一次接触CI,值得记录一下. 网上关于CI的文档很多,也很全面,博主这里只是简单的记录下 ...

  2. CI框架的三种设置cookie的方式

    [php] view plaincopyprint? //第一种设置cookie的方式:采用php原生态的方法设置的cookie的值 setcookie("user_id",$us ...

  3. CI框架源码阅读笔记4 引导文件CodeIgniter.php

    到了这里,终于进入CI框架的核心了.既然是"引导"文件,那么就是对用户的请求.参数等做相应的导向,让用户请求和数据流按照正确的线路各就各位.例如,用户的请求url: http:// ...

  4. CI框架浅析(全篇)

    业余花了点时间看看CodeIgniter框架(简称CI),CI目前的稳定版本是 3.X,4.0版本已经出来了,但还在测试中,所以我分析的还是 3.x 版本. CI是一个很轻便的框架,整个下载包也就2M ...

  5. php ci 框架 扩展缓存类,PHP CodeIgniter框架的工作原理研究

    这篇文章主要介绍了PHP CodeIgniter框架的工作原理研究,本文首先分析了它的工作流程,然后总结了它的工作原理,需要的朋友可以参考下 CodeIgniter(以下简称CI,官网以及中国站)是一 ...

  6. 【CI3.1】CI框架简单使用方法

    CI框架简单使用方法 1.回忆MVC1.1.M:模型,提供数据,保存数据1.2.V:视图,只负责显示,表单form1.3.C:控制器,协调模型和视图1.4.action:动作,是控制器中的方法,用于被 ...

  7. ci框架 mysql_CodeIgniter (CI)框架中的数据库查询汇总

    引言: 前两天业务涉及到一个拉取答题排行榜的需求,数据库里数据是这样的: 同一个人可能提交过多次成绩,所以同一个人可能会有多次记录: 同一个人提交的多次成绩中可能有至少两次成绩是一样的. 于是,查询的 ...

  8. 最简单的CI框架入门示例--数据库取数据

    这个写给初学者看,这是最简单可以调通的例子,网上很多例子其实初学者本地跑不通,缺这少那. 1.下载CI框架(自己找) 2.配置 database.php配置:     为数据库服务器设置 connec ...

  9. PHP CI框架目录结构及运行机制

    CI目录结构 CI主要组成部分为,application(应用文件夹).system(系统文件夹)和index.php入口文件. 应用文件夹中主要是存放控制器.模型和视图等,系统文件夹中主要是存放组成 ...

最新文章

  1. 魔豆路由工程版体验:智能路由脱离手机的尝试
  2. 网络推广外包专员浅析货拉拉坠车事件后宣布整改增加录音录像功能
  3. 上手机器学习,从搞懂这十大经典算法开始
  4. 1.4 为什么深度学习会兴起-深度学习-Stanford吴恩达教授
  5. jq js json 转字符串_JS中JSON对象和String之间的互转及处理技巧
  6. php cdata,PHPcdata处理(详细介绍)_PHP教程
  7. C++笔记-二维棋盘数组转邻接表(使用QTL)
  8. 几款极好的 JavaScript 下拉列表插件
  9. 在使用springMVC时,页面报的404异常
  10. 电脑快捷键(键盘不灵了赶紧使用快捷键)
  11. 基于 Windows7 + VMware-CentOS7虚拟机 搭建开发模式
  12. AI插件开发入门教程001 - AI脚本简介
  13. 【NOIP2017提高A组集训10.25】凤凰院凶真(dp)
  14. Desktops 虚拟桌面软件(推荐)
  15. 基于Spring boot的云客服系统实现
  16. 如何在ESXi7系列镜像里添加网卡vib驱动?
  17. Invalid hook call. Hooks can only be called inside of the body of a function
  18. ssh配置和多平台ssh配置
  19. BIOS怎么开启UEFI模式|电脑设置UEFI启动的方法
  20. 百度地图JS版本API常见问题

热门文章

  1. 2022年最值得学习的5款开源Java框架 小白教程
  2. [MySQL安装问题] HeidiSQL连接MySQL报错——完美解决
  3. db29.7时间格式化为时间到时分秒_科普!GoldWave的时间表示大全指南
  4. 使用 Python 进行游戏脚本编程
  5. Android 获取wifi信号强度
  6. h5仿微信支付键盘|仿支付宝数字键盘
  7. CSDN发布《2015年度中国软件开发者白皮书》
  8. 顺序表《Sqlist》
  9. 计算机考研复试面试题二
  10. win98与win7共享文件