分布式部署
我们之前配置了2个虚拟主机,但是这几个虚拟主机共用了一个配置文件,也就是说“这一个配置文件发生改变后”,这几个网站的配置也共同该改变
我们在php.ini 中搜索“session_auto_start”
这个配置叫做某某周期:时间是1440s,我想让它在第一个网站存活一分钟,想让它在第二个网站存活
两分钟,第三个网站存活三分钟,如果改了那么都改了,因为只有一个配置文件
一个apaceh支持多个虚拟主机。如果httpd。conf和php。ini的配置发生了变化,所有的虚拟主机的配置都发生的变化
如何实现不同的虚拟主机有不同的配置信息?那怎么办呢,
apache里面有若干个虚拟主机
先在我每个虚拟主机里都有自己肚子的配置文件,我现在覆盖掉了总文件对我的影响,
htaccess:文件又称为分布式部署文件,这个问价可以覆盖httpd。conf文件中的配置,
此文件一个网站下可以有多个分布式部署文件,为什么有多个呢?一个站点也可以放多个,但是有个
规则,每个。htaccess文件只能作用于房前为
比如说这是一个虚拟主机的站点,在这个大的文件夹下可以建立一个htaccess文件,在images里卖也可以建立一个htaccess文件,证明一个站点里面可以建立多个此文件,
但是有个规则,每个。htsccess文件只能作用于当前目录和子目录,什么意思,换句话说imges咯里面的这个文件能不能
作用于外面的index1。php这个文件 ,答案是不能的,但是站点下的可以i作用于images,images就不能作用于站点下的
经过我的测试发现了一个问题,就是说当我创建好了.htaccess文件之后,
我为其设置的可允许访问就不能用了,当我输入www.aa.com的时候,就是没有权限,而删除了这个文件之后,就立马能够访问了
我在控制台echo allow from all>.htaccess,这样既创建了一个htaccess文件又往里面输入了内容,结果我成功了现在把vhost里面的权限删除了,我也能够访问www.aa.com了
apache配置文件有主配置文件和分布式配置文件组成,
主配置文件修改后需要重启服务器,分布式配置修改后不需要重启服务器,
创建分布式部署文件必须借助于编辑器,直接用记事本不行,作用范围i是当前目录和当前子目录
分布式部署会降低apache的性能,如果不是必须使用就不要使用
分布式部署现在主要是改的apace的配置,php的也是可以改的
还有一个地方Allowoverride none 是否允许覆盖,允许分布式部署文件覆盖主配置文件,
必须在虚拟主机中允许覆盖,
下面用分布式部署更改php的配置
分布式部署特点。
更改php的配置需要两个指令
通过php_value和php——flag来更改php配置的值,
思考这两个指令是属于apache的指令还是php的指令,
我想这应该是php的指令,可是却是却是apaceh的指令,分布式部署里面都是apaceh的指令,但是其中有liangg指令
是用来更改php的值的
php_flag用来更改开关性质的配置, php_value用来更改值性质的配置
php_flag session.auto_start 1 更改开关性质
php_value session,gc_maxlifetime 10 更改值性质
<?php
echo ini_get('session.auto_start'),'<br>';
echo ini_get('session.gc_maxlifetime'),'<br>';
ini_get()用来获取php配置的值,当然ini_set()也可以设置,但是这只是在页面中