动态修改php的配置项

我们一般修改php的配置项都是在php.ini中修改。在php,ini中的修改会影响到所有使用php的程序。假如我想让修改只在某个域名下生效,该如何做呢?

使用ini_set()
首先想到的可能是使用ini_set()方法在脚本中修改。但是这个只能修改作用域为PHP_INI_USER和PHP_INI_ALL的配置项。具体配置项作用域说明请查看 PHP配置指令作用域说明

使用php_value
如果我访问www.bo56.com下的url时,程序每次执行都自动加载一个header.php文件。但是,如果是通过shell脚本方式执行,就不要加载这个文件了。要实现这个需求,我们需要用到 auto_prepend_file 这个配置想。这个配置想的作用域是 PHP_INI_PERDIR 。 也就是说不能通过ini_set()方法设置。那我们可以通过php_value进行设置。

如果是apache+php的组合,我们可以在apache的配置文件中加入如下指令即可。


Php_value auto_prepend_file /home/www/bo56.com/header.php

如果是nginx+php组合,可以加入如下指令

fastcgi_param PHP_VALUE "auto_prepend_file=/home/www/bo56.com/header.php"; 

注意,nginx中多次使用 PHP_VALUE时,最后的一个会覆盖之前的。如果想设置多个配置项,需要写在一起,然后用换行分割。如:

fastcgi_param PHP_VALUE "auto_prepend_file=/home/www/bo56.com/header.php \n auto_append_file=/home/www/bo56.com/external/footer.php"; 
时间: 2024-10-03 14:48:03

动态修改php的配置项的相关文章

Delphi实现动态修改显示器分辨率

本实例演示如何在程序中动态修改屏幕的分辨率,并且不需要重新启动计算机就可以生效. 向窗体上添加两个Button控件,设计完成的主界面如图1所示. 图1 主界面 在程序中添加一个自定义函数DynamicResolution,它有两个参数,分别对应于水平和垂直方向的分辨率,并且该函数有一个BOOL类型的返回值,通过判断返回值可以判断DynamicResolution函数是否正确执行.DynamicResolution函数代码如下: function TfrmMain.DynamicResolutio

ASP.NET 2.0中动态修改页面标题

asp.net|动态|页面 在老外的站上看到解决的好方法,故简单编译之:在一个asp.net 的应用中,经常要动态修改页面的标题,一个典型的例子就是,在一个页面导航的控件中,希望用户点选哪一个连接,在页面的title里就显示相关的内容,举个例子,比如一个网站,有如下的网站架构:有图书分类,下面再有中国图书,外国图书分类,则一般可以用树形或者asp.net 2.0的新增加的导航栏控件(sitemap),来实现,比如 图书--->中国图书;图书---->外国图书等,而如果这个时候,能在页面的<

动态修改.Net StreamReader Encoding编码

stream|编码|动态 在.Net framework中StreamReader的使用encoding必须在构造器中指定,而且中途完全不可以更改. 在一般的情况下,这不会造成什么问题.一般若是从硬盘读取文件,单一文件内的编码一般都是统一的.即便是发现读错,亦可以关闭StreamReader,重启使用新的编码读取. 偏偏偶最近遇到了需要修改编码的需求,而且,我的程序没有关闭重读的机会.因为偶使用的StreamReader的BaseStream是一个Network Stream,我不可以关闭它--

c#2.0中动态修改页面标题

动态|页面 在老外的站上看到解决的好方法,故简单编译之:在一个asp.net 的应用中,经常要动态修改页面的标题,一个典型的例子就是,在一个页面导航的控件中,希望用户点选哪一个连接,在页面的title里就显示相关的内容,举个例子,比如一个网站,有如下的网站架构:有图书分类,下面再有中国图书,外国图书分类,则一般可以用树形或者asp.net 2.0的新增加的导航栏控件(sitemap),来实现,比如 图书--->中国图书;图书---->外国图书等,而如果这个时候,能在页面的<title&g

easyui如何动态修改窗口标题

使用easyui作为前台框架极大的节省了项目资源,easyui官网文档中基本上囊括了所有的方法,但一些灵活性的方法文档中是找不到的,比如说动态替换窗口的属性,下边简单介绍些如何快速替换窗体的title属性. 1.直接替换panel属性 例如:$('#dr_auth').panel({title: "新title"}); 所有的窗体都继承了panel中的方法,所以可以直接用. 2.通过具体窗体替换属性 例如:$('#dr_auth').dialog({title: "新titl

Ext2.0本地模式动态修改combobox选择项

在很多时候,combobox的选择项已经下载到本地,只是存储方式不同,我们就需要动态修改combobox的选择项.例如有一颗树,树的节点就是combobox的选项,在Ext2.0中树的存储格式不是使用store的,而combobox必须使用store,这就需要进行数据转换.本文就以此作为例子,研究一下如何动态修改combobox的选择项. 我们先创建一个带几个选项的树: var root = new Ext.tree.TreeNode({ text: '选项', allowDrag:false,

js动态修改表格行colspan列跨度的方法

 这篇文章主要介绍了js动态修改表格行colspan列跨度的方法,实例分析了javascript动态修改html中table属性的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了js动态修改表格行colspan列跨度的方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 <!DOCTYPE h

javascript动态修改Li节点值的方法

 这篇文章主要介绍了javascript动态修改Li节点值的方法,涉及针对li节点的操作技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了javascript动态修改Li节点值的方法.分享给大家供大家参考.具体实现方法如下:   代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Cont

jQuery在页面加载时动态修改图片尺寸的方法

 这篇文章主要介绍了jQuery在页面加载时动态修改图片尺寸的方法,实例分析了jQuery操作图片的技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了jQuery在页面加载时动态修改图片尺寸的方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 $(window).bind("load", function() { // IMAGE RESI