如何搭建PHP运行环境?不用愁,手把手教你,百分百成功!
本笔记有原理分析、有详细步骤、有相关软件下载,php环境搭建轻松解决!
。。。。。。
与PHP配合最好的就是apache软件。
第一步、apache的安装
1、下载相应版本的apache:
2、安装时 需要设置服务器的信息:
3、我们使用自定义安装 进行一些配置项:
设置以下 安装位置:
4、Install开始安装和测试是否成功。
安装完成后,应该:在浏览器的地址栏中 输入:Localhost
如果能够发现如下的界面 说明apache安装成功:
Apache安装完成了,说明我们有:http服务器。先祝贺下!
下面需要添加 http服务器对php文件的处理能力。安装php软件:
Php版本的介绍?
5.x 表示的php软件的开发版本好。数字越大 越新。一般建议下载最新的稳定版本。
通常情况下 我们都将php作为apache的一个工具来使用。将php作为apache的一个模块来使用。
通常情况下:安装php 指的是 将php安装成apache的模块。
1、下载相应版本:
不用安装的步骤,需要解压 配置即可:
2、解压并将文件复制到 安装目录(E:\amp\php):
3、配置php与apache的关系:
通过修改apache的配置文件达到目的:
Apache的配置文件:apache的安装目录/conf/httpd.conf,我这里是:
E:/amp/apache/conf/httpd.conf
配置文件中使用apache的指令 LoadModule来实现即可
loadModule 模块名 模块地址
Httpd.conf文件:
此时 apache已经有了一个叫做 php的工具了。
4、此时还需要配置,在什么时候应该调用这个工具。
只有请求到的文件的后缀名为 .php的话 才需要调用这个工具完成解析。
利用 执行段 <FilesMatch>完成。
Httpd.conf中::
5、重启apache使apache的配置文件生效:
重启方法如下:
6、判定PHP安装是否成功
是通过访问localhost/info.php来进行检查。
(定义一个info.php文件,将其放置在F:\amp\apache\htdocs中,如下图所示:其中info.php代码编写如下
)
访问http://localhost/info.php 如出现下列界面,则说明成功 祝贺下
7、配置PHP.INI,并将其放入自定义位置
我们的apache有配置文件 同样 我们的php也有配文件。
我们的php的配置文件 名为 php.ini。
如果需要我们的配置文件被加载需要怎么做?
一 将php.ini 放入到 指定目录下;c:/windows
二 或者将php.ini 放到你想放置的位置,此时需要更改 php的配置文件目录达到效果
通常都是第二种做法,将php的配置文件放入到php自己的目录:
由于php已经是apache模块,因此虽然php.ini是php模块用的,但是是apache负责加载的。
需要修改apache的配置来更改php模块的配置文件目录。
7.1利用apache的 PHPIniDir指令来配置PHP.ini位置(还是在httpd:conf中进行的配置)
7.2 php.ini-development复制并将其重命名为php.ini
具体做法是:打开F:\amp\php文件,找到php.ini-development 如下图所示:
将该文件复制,然后将复制的文件名字修改成php.ini即可
重新启动apache服务器,(我们使用了php的配置文件 但是 如果修改了php的配置文件同时 也需要重启apache配置才能生效。)
7.3检查PHP.ini是否成功
这样就会从当前的加载文件目录(localhost/info.php)加载到当前的php.ini配置文件,这样,
8、在php.ini中进行的一些配置
8.1 Extension_dir :扩展目录:(在F:\amp\php\ext文件夹中,里面都是dll为后缀名的扩展。为了方便以后功能提升,需要进行目录扩展设置。)
8.2时区:
第三步:安装MySQL
MySQL是数据库服务器软件。意味着 mysql可以提供数据库服务。
1、下载:相应的版本:
2、选择自定义的安装方式
3、设置目录 两个地方都需要进行目录设置:
点击install 开始安装即可
4、当出现以下的界面时,说明MySQL程序已经安装成功
5、开始配置MySQL:
在这里开始省略一些默认的步骤,大家只要按照默认操作即可。直到出现下方图片即可:
5.1最好设置设置编码:为utf8.
5.2建议 将mysql目录写到环境变了 path中:
5.3设置MySQL的root用户的密码:1234abcd
5.4开始配置系统:
5.5出现以下画面 说明配置成功,
6.查看mysql的安装:
安装成功后的mysql 即安装了服务器端部分,也安装了客户端部分。
在MySQL的安装目录:
因此 在以后 我们使用 php 去操作数据库时 ,php是作为客户端来存在的,来链接MysQL服务器。
7、当前MysQL已经安装到我们的电脑上了,接下来的工作,就是需要使用我们的PHP去操作MySQL了:
步骤:
一:开启MysQL扩展:
1, 需要正确扩展文件。
上面的文件 就是一个最基本的 链接mysql的扩展文件。
2, 使用extension指令加载扩展文件即可。
需要设置正确的 extension_dir 扩展文件目录(这步在上面在php.ini中已经操作过了。)
使用extension指令加载 相应的扩展(在php.ini中进行操作):
8、检查mysql是否安装成功
需要重启apache 使之生效
我们可以通过使用phpinfo()查看是否成功,如果大家能够看到如下的界面,则成功了!欢呼下!
到这里就可以了。将文件放到F:\ampserver\Apache2.2\htdocs下面,然后通过localhost/文件名.php即可
比如我们建立一个文件a.php,将其放到F:\ampserver\Apache2.2\htdocs文件夹下,然后通过localhost/a.php即可
环境搭建结束
——————————————————————————————————————————————————以下为虚拟主机配置——传智播客——————————————————————————————————————————————————
模拟再接下来的php测试中 我们存在两个测试网站:
一个 :test 专门用于保存一些测试代码的
一个: shop 模拟一个简单的shop项目。
因此 通常情况 每个项目的测试代码 应该保存到每个项目的目录中才可以。
目录虽然不同
但是 访问方式:
Test: localhost/test
Shop: localhost/shop
访问方式中 域名是相同的。
在真实的项目中 域名相同意味着什么?
意味着 现在这个两个项目 其实 只有一个域名 其实只是一个项目,只是不同的子目录而已。
常规下,不同的项目应该有不同的域名才可以:
Shop: kang.shop.com
Test kang.test.com
所以我们需要介绍虚拟主机的知识。请看下面:
一、Apache 虚拟主机的配置:
如果需要配置基于域名的虚拟主机,则需要通过修改apache的配置文件达到效果!
1、大家需要做的就是 将apache配置文件Httpd.conf里的这行代码的注释去掉即可:
2、找到httpd-vhosts.conf并进行相应配置
2.1找到httpd-vhosts.conf
2.2 在httpd-vhosts.conf文件内增加一个 NameVirtualHost *:80
2.3每一个虚拟主机 是由 一个
2.4, 配置虚拟主机中的指令:
3、重启服务器使之生效。
二 浏览器的配置,需要浏览器能够找到虚拟主机所在的机器才可以。
现在通过浏览器访问我们的虚拟域名是访问不到的,说明我们现在的浏览器还不能定位服务器!我们要配置通过域名解析ip。要利用 windows系统的域名解析文件实现。
1.找到本机的host文件
2,打开host文件,将下面kang.shop.com 与 kang.test.com 分别对应成本机:
以上的操作 完成了 虚拟主机的最基本的配置,祝贺下!
三、权限的配置:
再次创建一个虚拟主机
kang.frame.com e:/amp/sites/frame
服务器端:
增加一个虚拟主机:
重启apache:
浏览器端:
增加一个域名解析:
但是:
导致这个结果的原因是:项目所保存的位置不一致:、
Test shop e:/apache/htdocs
Frame e:/amp/sites/
难道所有的项目都必须放在 htdocs目录么? 不是。
但是 我们需要手动的配置目录权限。
默认情况下 有两个配置在起作用:
第二段:
上面的代码的含义:配置 e:/amp/apache/htdocs这个目录选项。
因此 我们的 test 和 shop 项目 都走的是 第二段中 allow from all这个配置
而 frame项目 走的是 第一段中的 deny from all 的配置。
如果我们需要解决这个问题,可以修改:
第一段中的:
这样 就可以让所以的目录 全部被访问 解决了我们的问题 但是 同时增加安全隐患。
那么我们?应该增加对单独某个目录的设置 使用Directory指令段配置即可:(此时为了方便管理,我们需要在httpd-vhosts.conf中进行如下设置,将虚拟空间设置和权限放在一起。)
此时我们输入kang.frame.com是会出现403错误,需要输入kang.frame.com/index.php
当我们去访问目录内容(也即输入kang.frame.com)时:需要增加如下指令才可以看到目录文件列表:
如何访问目录索引页:使用 指令 DirectoryIndex指令完成!
Apache的分布式配置文件:
Apache 配置文件分成2个:
1 apache的主配置文件 包括 httpd.conf 与 在httpd.conf中被使用include指令加载的文件,例如 httpd-vhosts.conf
2 apache的分布式配置文件。通常是被放置到某个目录内的 .htaccess这个文件。
以上两个配置文件的区别:
主配置文件是在apache启动的时候加载的配置文件
分布式配置文件是在 请求到某个目录时才加载的配置文件
主配置文件 只有启动的时候加载其他任何时候都不需要
分布式配置文件,只要请求到这个目录,就会被加载。因此 在这个文件中对配置做修改是不用重启apache服务器的。
什么样的配置指令写到 .htaccess中呢?目录级别的配置都可以。
但是默认情况下 .htaccess文件是不可用的。默认情况下 写在.htaccess中的指令是不好使的。需要在 Directory段中 写:Allowoverride All才可以:允许分布式配置文件 重写配置项的内容。
Httpd-vhosts.conf的内容:
项目下的分布式配置文件:
分布式 是指的 分布到 每个目录中的,因此配置只针对当前目录 及其 后代目录有效。
ServerName kang.frame.com
DocumentRoot "e:/amp/sites/frame"
Allowoverride All
DirectoryIndex index.php
Options Indexes
Allow from All
在修改apache的配置文件时 总会碰到 重启失败的情况?
大家可以利用httpd.exe 来完成配置文件语法的测试:
-t 是测试的意思,
结果中 如果可以看到syntax ok 说明语法没问题。
本文来源:https://www.2haoxitong.net/k/doc/9100e2af9b89680203d825e4.html
文档为doc格式