asp.net中的web.config文件的作用相当于php.ini的文件。
但是web.config这个文件不但可以用于全局所有网站设置,也可以放在每个网站根目录下单独作用于本网站或本虚拟目录。类似于放在
c:\windows\php.ini和apache中httpd.conf部分功能。全局生效。那么在php+apache和php+iis中理论上有没有可能实现在每个网站根目录下面放一个httpd.conf或php.ini能够单独设置生效的?c:\windows\php.ini中设置启用mysql扩展
而在具体的网站
d:\www\aaa\php.ini中再设置一次mysql扩展关闭。
那最终
d:\www\aaa这个网站是没有mysql扩展的。在linux系统中.htaccess有一部分类似的功能。在httpd.conf开启允许复盖即可。有没有尽可能的接近上述功能的方案?php也可以定制编译的。比如开启php.ini的 Additional php.ini defines。linux下自编译可以加参数scan dir。windows下默认是空值。也可以自行编译解决。但是经过试验。比如带的参数是c:\aaaaa\那么到时候他也只是把
c:\aaaa\下面所有的.ini全部一古脑的读取进来而已。并不会区分他是应该是属于
c:\www\aaa
c:\www\bbb
c:\www\ccc
这样的各个不同的网站
相应的他会对
c:\www\aaa 
应用
c:\windows\php.ini+c:\aaaa\aaa.ini+c:\aaaa\bbb.ini+c:\aaaa\ccc.ini
c:\www\bbb
应用c:\windows\php.ini+c:\aaaa\aaa.ini+c:\aaaa\bbb.ini+c:\aaaa\ccc.ini
c:\www\ccc
应用
c:\windows\php.ini+c:\aaaa\aaa.ini+c:\aaaa\bbb.ini+c:\aaaa\ccc.ini要实现的效果就是只要在各个网站根目录,放一个php.ini并能让php读取到应用。

解决方案 »

  1.   

    php 5.3 cgi方式可以针对host或path设置
      

  2.   

    php 5.3 cgi方式可以针对host或path设置
    ????????愿闻其详
      

  3.   

    sorry, 说错了,针对host和path还是在主ini里面
    user.ini才是对目录的,见http://php.net/manual/en/configuration.file.per-user.php
      

  4.   

    首先你要是php 5.3,而且要用cgi或者fastcgi方式运行,如果你是iis的话5.3好像只提供了fastcgi(也是推荐的,也许有cgi,没细看,不过isapi是肯定没有了)
    然后在主php.ini里面设置好user_ini.filename和user_ini.cache_ttl就可以像.htaccess那样,在每个目录里面都用.user.ini文件来写某些php配置,cache_ttl就是缓存时间,默认是5分钟,300秒
      

  5.   


    你好强啊。我试试去。一举解决了我两个问题,虽然另一个问题我没有问出来。
    5.3刚出来我也没有发现有isapi模式了。郁闷了半天。