简述php环境搭建与配置


Posted in PHP onDecember 05, 2016

最近在学习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会自动指向到多站点置配中的第一个站点目录

以上就是本文的全部内容,希望对大家有所帮助,同时也希望多多支持三水点靠木!

PHP 相关文章推荐
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
Jan 30 PHP
PHP 类型转换函数intval
Jun 20 PHP
PHP实现的封装验证码类详解
Jun 18 PHP
ueditor 1.2.6 使用方法说明
Jul 24 PHP
在PHP中使用X-SendFile头让文件下载更快
Jun 01 PHP
PHP防止post重复提交数据的简单例子
Jun 07 PHP
推荐一款MAC OS X 下php集成开发环境mamp
Nov 08 PHP
PHP简单实现文本计数器的方法
Apr 28 PHP
PHP 等比例缩放图片详解及实例代码
Sep 18 PHP
php实现留言板功能(代码详解)
Mar 28 PHP
Yii2框架中一些折磨人的坑
Dec 15 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
Feb 21 PHP
php 变量引用与变量销毁机制详细介绍
Dec 05 #PHP
[原创]php实现 data url的图片生成与保存
Dec 04 #PHP
php 魔术常量详解及实例代码
Dec 04 #PHP
深入浅出讲解:php的socket通信原理
Dec 03 #PHP
thinkphp实现分页显示功能
Dec 03 #PHP
thinkphp jquery实现图片上传和预览效果
Jul 22 #PHP
详解PHP用substr函数截取字符串中的某部分
Dec 03 #PHP
You might like
PHP将XML转数组过程详解
2013/11/13 PHP
PHP英文字母大小写转换函数小结
2014/05/03 PHP
php使用date和strtotime函数输出指定日期的方法
2014/11/14 PHP
谈谈 PHP7新增功能
2015/12/16 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
2019/03/22 PHP
Javascript的IE和Firefox兼容性汇编
2006/07/01 Javascript
跨浏览器的 mouseenter mouseleave 以及 compareDocumentPosition的使用说明
2010/05/04 Javascript
JavaScript去除空格的三种方法(正则/传参函数/trim)
2013/02/06 Javascript
js统计页面的来访次数实现代码
2014/05/09 Javascript
jQuery中prevAll()方法用法实例
2015/01/08 Javascript
使用jQuery Mobile框架开发移动端Web App的入门教程
2016/05/17 Javascript
原生JS版和jquery版实现checkbox的全选/全不选/点选/行内点选(Mr.Think)
2016/10/29 Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
2017/04/01 jQuery
jquery中有哪些api jQuery主要API
2017/11/20 jQuery
Vue前端项目部署IIS的实现
2020/01/06 Javascript
浅谈vue中get请求解决传输数据是数组格式的问题
2020/08/03 Javascript
selenium 反爬虫之跳过淘宝滑块验证功能的实现代码
2020/08/27 Javascript
[00:38]TI珍贵瞬间系列(二):笑
2020/08/26 DOTA
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
python getopt详解及简单实例
2016/12/30 Python
Python中shape计算矩阵的方法示例
2017/04/21 Python
Python用csv写入文件_消除空余行的方法
2018/07/06 Python
Python迭代器与生成器基本用法分析
2018/07/26 Python
Python发展简史 Python来历
2019/05/14 Python
将python运行结果保存至本地文件中的示例讲解
2019/07/11 Python
python利用datetime模块计算程序运行时间问题
2020/02/20 Python
Python系统公网私网流量监控实现流程
2020/11/23 Python
英国领先的NHS批准的在线药店:Pharmacy2U
2017/01/06 全球购物
项目合作意向书范本
2014/04/01 职场文书
2014年9.18纪念日演讲稿
2014/09/14 职场文书
通知书大全
2015/04/27 职场文书
小学运动会入场词
2015/07/18 职场文书
三好学生竞选稿范文
2019/08/21 职场文书
Python Pygame实战在打砖块游戏的实现
2022/03/17 Python
用Python仅20行代码编写一个简单的端口扫描器
2022/04/08 Python
MySQL新手入门进阶语句汇总
2022/09/23 MySQL