简述php环境搭建与配置
最近在学习php,以下是看php100视频教程,做的学习笔记,在这里存放以便今后使用。
apache--php--db(mysql)
一、apache:基本工作
·用户通过浏览器访问服务器的文件,它就将该文件传递给用户,在用户的浏览器显示该文件的内容。
·普通文本文件,可以通过apache直接传给用户浏览器显示。
·程序文件,比如php,它不能直接在浏览器显示,所以需要apache先调用php的某个组件,将php文件解析执行后,再返回给apache,apache再将这个执行后的文件,传给用户浏览器显示。
关键配置:
配置文件:conf/httpd.conf;(每次修改完这个文件后,需要重启apache)
1.引入php组件
因为在用户访问php文件时,apache能够调用到php组件,来执行该php文件。所以apache在配置的时候,需要在配置文件中,将php的组件和它关联起来。
例如我将apache安装在f盘的program里面,所以它的组件路径就是:loadmodule php5_module "f:/program files/php54/php5apache2_2.dll"
2.设置什么时候去调用php组件
由于不是用户每次访问的都是php文件,所以不是需要每次都让apache都要去调用php解析组件。因些需要让apache判断什么时候,才去调用apache.即后缀名,是.php的时候才调用。
在这个标签里面<ifmodule mime_module></ifmodule>加如下这句:
addtype application/x-httpd-php .php
3.php的置配文,路径
phpinidir "f:\program files\php54"
以上是最关键,必不可少的配置。
其它配置:
在php目录中,有两个配置文件 php.ini-development和php.ini-productor 把其中一个名字改成 php.ini 就可以了
1.目录权限:
【<directory "f:/program files/apache2.2/htdocs">】通过这个设置,可以控制访问服务器的目录。
注意这里面的目录级别要大于或等于【documentroot "f:/program files/apache2.2/htdocs"】
例如:<directory "f:/program files/apache2.2/htdocs"> 只能访问htdocs目录下的站点目录。
<directory "f:/program files/apache2.2> 可以访问apache2.2目录下的所有站点目录。
2.默认访问首页的文件名配置:
【<ifmodule dir_module>directoryindex index.html index.htm index.php</ifmodule>】
通过这个设置,可以控制站点默认的首页;
类似于iis服务器配置的主机头;
3.日志
logs/access.log 这个文件记录用户的访问,访问的ip 页面,等信息;
4.错误提示信息配置
# some examples: #errordocument 500 "the server made a boo boo." #errordocument 404 /missing.html #errordocument 404 "/cgi-bin/missing_handler.pl" #errordocument 402 http://freeskyc-b2d592.bavo/subscription_info.html #
二、多站点配置
原理:用户通过域访问同一个ip地址的服务器时,服务器上的apache将不同的域名,指向服务器不同或相同的文件夹目录。这个过程也叫虚拟主机;
1.目录权限:
【<directory "f:/program files/apache2.2/htdocs">】通过这个设置,可以控制访问服务器的目录。
注意这里面的目录级别要大于或等于【documentroot "f:/program files/apache2.2/htdocs"】
例如:<directory "f:/program files/apache2.2/htdocs"> 只能访问htdocs目录下的站点目录。
<directory "f:/program files/apache2.2> 可以访问apache2.2目录下的所有站点目录
2.载入多站点的组件:
在apach的配置文件靠近最下方有
#include conf/extra/httpd-vhosts.conf
把这个#号去除,就可以载入这个组件;
3.配置这个多站点的组件
在apach安装目录里面的
conf\extra\httpd-vhosts.conf
找到这个文件 进行配置
4.配置说明:
namevirtualhost *:8080 这里的端口号,必须和apach配置文件中一至
serveradmin:管理员的邮件地址,为不同站点可以设不同的邮件地址,如果不设置,默认会找到apach配置文件里面的管理员邮件地址;
documentroot 是指向的虚拟目录
servername: 需要绑定的域名或ip
serveralias 绑定多个域名
errorlog 错误日志存放路径,为不同站点建立不同的错误日志
customlog 日志文件
以上只需要配置好
例如:
<virtualhost *:8080> documentroot "f:/program files/www/bcom" servername 127.0.0.3:8080 </virtualhost>
两个就可以了,复制以上代码,改变目录和绑定的域名,就可以有多个站点了
要注意的是,
*在apach里面的目录权限要和这个多站点的目录对应
即:<directory "f:/program files/www">
*配置好多站点之后,apach就不会去找先前默认的站点了
这一句也就不起作用了:documentroot "f:/program files/apach/htdocs"
*并且在地址栏目中如果输入了不存的,绑定的域名,apach会自动指向到多站点置配中的第一个站点目录
以上就是本文的全部内容,希望对大家有所帮助,同时也希望多多支持!