C:\wamp\bin\apache\apache2.4.17\bin\php.ini 用于web访问时的配置文件,

C:\wamp\bin\php\php5.6.15\php.ini 用于cli [command-line interface命令行界面,win下配置环境变量]命令行使用时的配置文件
 

当server上有两个PHP.ini时,

一个作用于cli,另一个作用于Apache,

在扩展php共享库时一定要将两个php.ini都配置好,

否则可能出现同样的方法通过cli可以正常执行,但接口调用就找不到。

=======================================================================================================================

通过apt-get方式安装PHP和自己手动编译两种方式的配置文件有些差异。这里只说下通过apt-get方式安装的情况(我没自己编译过)。

配置文件默认放在/etc/php5目录下。

‍以下是我机器中/etc/php5目录详情:

--------------------------------

/etc/php5$>ls -l */

apache2/:

总计 68

lrwxrwxrwx 1 root root 9 2010-11-22 23:21 conf.d -> ../conf.d

-rw-r--r-- 1 root root 67547 2010-10-15 22:33 php.ini

cli/:

总计 68

lrwxrwxrwx 1 root root 9 2010-11-22 23:21 conf.d -> ../conf.d

-rw-r--r-- 1 root root 67545 2010-10-15 22:33 php.ini

conf.d/:

总计 8

-rw-r--r-- 1 root root 54 2010-10-15 22:33 curl.ini

-rw-r--r-- 1 root root 52 2010-10-15 22:33 pdo.ini

-----------------------------------

可以看出,在etc/php5目录下有三个文件夹:apache2,cli,conf.d。

其中

apache2,cli下都有php.ini文件,且彼此独立;

apache2,cli下有conf.d,且均是指向../conf.d(即/etc/php5/conf.d)的符号链接。

不同的SAPI【sapi介绍   http://www.phpddt.com/php/php-sapi.html】使用不同的配置文件。如果是apache,则使用etc/php5/apache2目录下的配置文件,如果是命令行(CLI)则使用/etc /php5/cli目录下的配置文件。而/etc/php5/conf.d目录下的*.ini文件是针对某一扩展的额外配置文件,且是通用的(所以其他俩 个目录都有到这个目录的符号链接)。

由此我们可以知道php的配置文件被分割成了俩部分,一部分是主配置文件(php.ini),另一部分是额外的配置文件(如配置某个扩展的配置文件curl.ini)。另外不同的SAPI有各自独立的主配置文件(php.ini)。

以上是通过apt-get方式安装的情况。通常情况下,PHP配置文件只有一个,即php.ini。所有配置信息都在这一个文件里。然而分开配置使配置信息更加清晰和模块化。

通过phpinfo()可以找到配置文件路径的相关信息。

--------------

<?php phpinfo(); ?>

------------------

在浏览器中打开showinf.php,会看相关信息,下面是节选:

可以看到系统会自动扫描conf.d下的*.ini文件。

因此,该修改哪个配置文件要视具体情况而定,比如作为apache的模块运行web服务就要修改apache2下的php.ini,作为shell脚本运行则修改cli下的.

附加组件的配置信息写到各自的×.ini中.

两个php.ini; ubuntu下配置文件的更多相关文章

  1. 【转】两种方法教你在Ubuntu下轻松关闭触摸板(TinkPad)

    Ubuntu是一个以桌面应用为主的Linux操作系统,所以在使用时我经常的触碰到触摸板,这样会造成我们一些的麻烦,所以要如何的关闭触摸板呢?我们一起来看看吧!   Ubuntu下如何关闭触摸板(Tin ...

  2. Ubuntu下更改Vim配置文件打造C/C++风格

    转载:Ubuntu下更改Vim配置文件打造C/C++风格 Vim默认的配置使用起来还不能让人满意,还需要自己配置 默认配置文件是:/etc/vim/vimrc我们可以在家目录下建立自己的配置文件切换到 ...

  3. Ubuntu 下 LAMP 的配置文件路径 转:

      配置文件路径: 1>apache 的配置文件路径 /etc/apache2/apache2.conf 2>apache 网站字符编码配置路径 /etc/apache2/conf.d/c ...

  4. [转]windows下和Ubuntu下adb找不到设备的解决方法

    最近在做flash手机项目,用fb选择android设备调试,总会出现找不到设备的情况.看了很多帖子都解决不了问题,后来终于研究出来是adb无法找到设备的问题.最后通知这篇帖子终于解决了问题. 使用电 ...

  5. ubuntu下nagios配置

    参考文献: http://www.cnblogs.com/mchina/archive/2013/02/20/2883404.html http://my.oschina.net/duangr/blo ...

  6. ubuntu下配置java环境【转】

    转自:http://www.cnblogs.com/fnng/archive/2013/01/30/2883815.html 配置JDK环境 下载 登录oracle的网站去下载JDK7 http:// ...

  7. Ubuntu下Apache+php+mysql网站架设详解

    目录 1 基础 2 安装 2.1 安装LAMP 2.2 图形化管理软件(可选) 2.2.1 安装webmin 2.2.2 安装phpmyadmin 3 配置文件路径 3.1 常用命令 3.2 配置ap ...

  8. Ubuntu下安装Nginx,PHP5(及PHP-FPM),MySQL

    .简介: Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱.虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很多 ...

  9. ubuntu下apache2-php-mysql的环境配置

    基本的支持环境.暂时还不应用zend优化,因此这里就不涉及到zend optimizer的安装了.其实在ubuntu系统中中安装远比在windows系统中设置更为容易,而且在终端下设置更省事. 1.安 ...

随机推荐

  1. 灵活性比Listview更好的RecycleView

    RecycleView:是Android L版本中新添加的一个用来取代ListView的SDK,它的灵活性与可替代性比listview更好. RecyclerView与ListView原理是类似的:都 ...

  2. java集合框架02

    public class ListTest { public static void main(String[] args) { //创建几个新闻对象 News news1=new News(1, & ...

  3. svg转换工具

    package com.rubekid.springmvc.utils; import java.io.ByteArrayInputStream; import java.io.ByteArrayOu ...

  4. linux下查看已经安装的jdk 并卸载jdk

    一.查看Jdk的安装路径: whereis javawhich java (java执行路径)echo $JAVA_HOME echo $PATH 备注:如果是windows中,可以使用: set j ...

  5. oracle 复制一条记录只改变主键不写全部列名

    场景:表TEST中有C1,C2,C3...字段,其中C1为主键,先需要复制表TEST中一条(C1='1'的)记录,修改主键列C1和需要变更的列后,再插入到表TEST中. procedure P_TES ...

  6. iOS中如何使状态栏与下面的搜索栏或NavigationBar或toolBar颜色一致

    在iOS7之后,status bar是透明的(transparent),navigation bars,tab bars,toolbars,search bars 和 scope bars 是半透明的 ...

  7. Dapper事务操作

    1.报错信息: 如果分配给命令的连接位于本地挂起事务中,ExecuteNonQuery 要求命令拥有事务.命令的 Transaction 属性尚未初始化. 出现这种原因是在执行Execute语句时,没 ...

  8. [转]简述volatile

    volatile int i=10; int j = i; ... int k = i; volatile 告诉编译器i是随时可能发生变化的,每次使用它的时候必须从i的地址中读取,因而编译器生成的可执 ...

  9. rails 中 create, new, build, save 的用法以及误区汇总

    自己很初级,初级的不能再初级,所以初次接触rails的时候,对于里面的create,new,build等方法不是很了解,用的很混乱,导致经常出现不必要的bug,很苦恼,决定,总结一下,结合网上已有资源 ...

  10. 记一次 nginx 504 Gateway Time-out

    今天程序在执行一项excel导出任务的时候 出现了nginx超时的提示 nginx 504 Gateway Time-out 排查过程: 查看该任务 发现内容是一个数据量20000条信息 每条信息有5 ...