澳门新浦京电子游戏PHP—–PHP程序设计基础教程—-第一章PHP开篇

一、PHP5.4环境搭配基本流程

本章内容知识体系如下所示:

写在前面的话

Apache:Web服务提供者。官网:www.apache.org

澳门新浦京电子游戏 1

PHP是服务器脚本语言,所以需要在服务器上才能运行。作为新手,搭建服务器可能需要捣腾很久,有可能还搞不定。所以在入门阶段,为了把更多时间用在熟悉编程语言上,使用集成环境是最好也是最方便的选择。而本文就来介绍如何在windows平台搭建PHP开发环境。

PHP: 官网:www.php.net

一、PHP基础知识

安装集成环境

Mysql:  官网:www.mysql.com

1.1 Web技术

1、下载集成环境包WampServer官网

澳门新浦京电子游戏 2

  服务器与客户端

本人下载的是Wampserver 3.0.6 64
bit ,下载完成之后双击安装即可。

二、软件下载

  服务器:能够提供某种服务的电脑

wamp 3.0.6 安装的软件分别为:

Apache下载地址:

  客户端:想使用服务器所提供服务的电脑

Apache 2.4.23
PHP 5.6.25/7.0.10
MySQL 5.7.14
PhpMyAdmin 4.6.4
Adminer 4.2.5
PhpSysInfo 3.2.5

PHP下载地址:

  服务器也是一台电脑,必须安装操作系统。否则就是一台裸机,啥也做不了,更不必说提供服务。一般来说,服务器更多选择Linux操作系统,个人电脑更多选择安装Windows操作系统。在服务器操作系统安装很多软件,由这些软件对外提供服务。

* apache 2.4及以上版本与2.4以下版本的配置会有些不同
* wamp会同时安装PHP5和PHP7,安装完成之后可以进行切换使用

Mysql下载地址:

  服务器提供的服务诸如:①HTTP网页服务:Apache、Tomcat、IIS等;②文件上传下载服务:VsFtp等;③邮箱服务:SendMail等;④数据存储服务:MySql、Qracle等。

2、安装过程出现错误

三、环境搭建

  小结:服务器就是提供服务的,客户端就是使用服务器提供的服务的。

若安装过程中出现提示缺少 msvcr110.dll
等文件,请先下载vcredist_x64.exe安装wamp所需环境。

(1)Apache安装

  IP地址

澳门新浦京电子游戏 3

澳门新浦京电子游戏 4

  互联网上那么多公司,每家公司都有自己的服务器提供服务。如何找到特定的服务器,使用该服务器提供的服务?借助于IP地址。IP地址相当于每一个连入互联网的设备的身份证号,在浏览器地址栏按照IP地址信息进行访问就能找到互联网上这台服务器。

服务器配置

安装成功

  IP地址分为4段,每段数字取值范围0~255,占1个字节,总共4个字节。例如百度的某台服务器IP地址:123.125.114.114。

1、项目路径

澳门新浦京电子游戏 5

  本地测试的IP地址:127.0.0.1。在测试时,客户端与服务器都安装在本地计算机上,数据无需任何网络传输。

安装好wamp后,在安装路径下有个www文件夹,该文件夹用于存放你的项目文件,在这个目录下的文件才会被服务器识别和执行。

(2)解压PHP5.4

  局域网IP地址以192.168.开头。

例如:我安装wamp时选中的目录为

澳门新浦京电子游戏 6

  例如别人用自己的电脑想要访问我的主机,如果直接输入127.0.0.1进行访问,其实是访问自己的电脑,只能通过192.168.x.x访问,但是这种方式必须要求两台电脑在同一个局域网中。如果想要自己的电脑能够被中国各地其他用户访问到,必须将程序挂在外网上进行访问。

D:wamp64

(3)配置Apache的httpd.conf文件

  域名

则安装后的存放项目文件目录为

澳门新浦京电子游戏 7

  IP可以准确查找互联网上连入的设备,但是IP地址是一串数字,不方便记忆。比如我们可以清除知道北京天安门,但是需要我们说出北京天安门的具体经纬度时候我们就不知道了。所以引入了域名的概念。域名就相当于地名一样,方便人们查找到服务器。例如百度的域名:www.baidu.com;QQ的域名:www.qq.com。

D:wamp64www

Apache安装目录

  本地域名:localhost

当然,如果不想使用默认的www文件夹,也可以修改apache配置,指定目录让服务器解析。

ServerRoot "D:/Apache Software Foundation"

  DNS域名解析服务器

在安装目录下找到apache的配置文件httpd.conf

监听端口

  当我们在浏览器地址栏中输入www.baidu.com的时候,浏览器并不知道输入的内容对应的是哪个IP地址,所以需要一个服务器对输入的字符串进行解析。这个服务器就是DNS域名解析服务器。

安装目录binapacheapache2.4.23confhttpd.conf

#Listen 12.34.56.78:80
Listen 80

  DNS叫做域名解析服务器,提供域名和IP地址的映射关系。

使用记事本或者其他编辑器打开文件,找到

载入PHP组件

  域名解析流程如下图:

 

LoadModule php5_module "D:/php54/php5apache2_2.dll"

澳门新浦京电子游戏 8

 代码如下

服务器名称

  ①现在本机的hosts文件中查找;②本机hosts文件中没有,就会请求DNS服务器;③DNS服务器的IP地址返回,如113.121.121.2;④请求路由器查找113.121.121.1这样的服务器。

DocumentRoot “${INSTALL_DIR}/www”

#ServerName www.meritit.com:80

  本地hosts文件存放地址:C:WindowsSystem32driversetcHosts

文件根目录

  端口

 

DocumentRoot "D:/Apache Software Foundation/htdocs"

  通过域名可以找到某一台服务器,但是一台服务器可能会提供多种服务,当我们找到这台服务器的时候,究竟想使用这台服务器的什么服务?这个就需要端口号进行区分。

把${INSTALL_DIR}/www修改为需要指定的目录

权限文件夹

  其实我们每次访问网页,最完整的写法应该是:

然后,同样在该目录中找到httpd-vhosts.conf文件

<Directory "D:/Apache Software Foundation/htdocs">

  如下是邮箱服务器设置:

 

索引(默认访问主页)

  澳门新浦京电子游戏 9

 代码如下

<IfModule dir_module>
DirectoryIndex index.html
</IfModule>

  

extrahttpd-vhosts.conf

错误日志

  总结:ip地址是用来查找某一台服务器的。域名是方便人们记忆的。DNS维护域名和ip地址的映射关系。端口是用来区分一台服务器上不同服务的。

 

ErrorLog "logs/error.log"

  HTTP协议

#打开文件↓

访问日志

  客户端访问服务器,通过IP地址和端口找到了这台服务器,这个时候就认为两个计算机在交流。

 

CustomLog "logs/access.log" common

  协议可以简单的认为两个计算机交流说的话。

  ServerName localhost

配置解析php

  常见的协议:①HTTP、HTTPS超文本传输协议;②FTP文件传输协议;③SMTP简单邮件传输协议。

  DocumentRoot D:/wamp64/www

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php

  

  

错误类型

  URL地址

  …

#ErrorDocument 500 "The server made a boo boo."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.meritit.com/subscription_

  在Internet上的Web服务器中,每一个网页文件都有一个访问标识符,用以唯一标识它的访问位置,以便浏览器可以访问到,这个访问标识符成为URL。

  

四、测试是否搭建成功

  示例:

 

新建a.php

  在上述的Url中,“http”表示传输数据所使用的协议,“www.aixuexi.com”表示要请求的服务器主机名,“80”表示要请求的端口号,“index.html”表示要请求的资源名称。

修改D:/wamp64/www为需要指定的目录即可。这样以后服务器就会解析这个目录下的文件了。
*修改配置之后要记得重启服务器

<?php
    phpinfo();
?>

1.2 PHP概述

2、测试

澳门新浦京电子游戏 10可以看到找不到php的配置文件,我们在apache配置文件中指定一下php的配置文件目录

  PHP是用于网页服务器端编程的脚本语言。Web服务器是安装了Web服务器软件的计算机,存储网站脚本程序。

新建一个项目测试服务器是否可用。

PHPIniDir "D:/php54"

  用户请求对应脚本时,服务器执行对应的脚本并返回执行结果。

在www文件夹下新建一个test文件夹,文件夹中新建一个test.php,php文件中写上一些输出语句。例如程序员入门必写的一句话:

澳门新浦京电子游戏 11

  常见的开发环境:

echo ‘Hello World!’

五、配置多站点访问

  WAMP:Windows + Apache + MySQL + PHP

之后打开浏览器,在地址栏输入

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

  LAMP:Linux + Apache + MySQL + PHP

localhost/test/test.php

去掉上面注释(打开虚拟主机配置文件)

  优点:①开源免费;②跨平台性;③面向对象;④支持多种数据库;⑤快捷性。

如果你的浏览器有显示Hello World!字样,就说明你的服务器可以使用了。

在httpd-vhosts.conf中配置了两个站点如下

1.3 常用编辑工具

澳门新浦京电子游戏 12

<VirtualHost *:80>  
    DocumentRoot "D:/Apache Software Foundation/a_com"  
    ServerName 127.0.0.2  
    ServerAlias www.dummy-host.meritit.com  
    ErrorLog "logs/dummy-host.meritit.com-error.log"  
    CustomLog "logs/dummy-host.meritit.com-access.log" common  
</VirtualHost>  

<VirtualHost *:80>  
    DocumentRoot "D:/Apache Software Foundation/b_com"  
    ServerName 127.0.0.3  
    ErrorLog "logs/dummy-host2.meritit.com-error.log"  
    CustomLog "logs/dummy-host2.meritit.com-access.log" common  
</VirtualHost>

  ①Editplus ②Notepad++ ③Zend Studio

3、配置虚拟主机

注意:一旦配置了虚拟主机,前面配置的DocumentRoot就无效了。

二、PHP开发环境搭建

不喜欢以localhost/项目文件名/xxx.php/…这种方式进行访问?那可以配置虚拟主机,配置后可以通过类似www.test.com(可自定义)这种形式访问。

D:Apache Software Foundationa_coma.php

<?php  
    echo "aaaaaa";  
?>  
D:Apache Software Foundationb_comb.php
<?php  
    echo "bbbbbb";  
?>

  在使用PHP语言开发程序之前,首先要在系统中搭建开发环境。通常情况下开发人员使用的都是Windows平台,在Windows平台搭建PHP开发环境需要安装Apache服务器和PHP软件。通常有两种方式:①自定义安装;②集成安装。

首先找到httpd-vhosts.conf文件并打开

注意:要修改权限文件夹目录

  2.1 Apache的安装

安装目录binapacheapache2.4.23confextrahttpd-vhosts.conf

访问结果:

  自定义安装:

在文件末尾添加

澳门新浦京电子游戏 13

  安装包下载地址:

 

澳门新浦京电子游戏 14

  下载64位安装包:

 代码如下

澳门新浦京电子游戏 15

澳门新浦京电子游戏 16

  #设置主机名(可自己设置)

  下载完解压至想要安装的目录。博主在D盘下建立Development文件,将下载的Apache服务器软件解压至该文件夹下,后续所有介绍都以此为基础进行总结。注意解压路径是纯英文路径,中间最好不要有空格

  ServerName www.test.com

  第一步:以管理员身份运行命令提示符,将目录切换到Apache服务器的解压文件夹下的bin目录下。

  #设置主机别名,即用该别名也可以访问(前提是域名解析正确)

  澳门新浦京电子游戏 17

  ServerAlias test.com

  第二步:使用httpd -k install -n “Apache”命令安装Apache服务器软件。-k参数指定要执行的命令,-n参数用以给服务器命名。

  #设置该站点根目录

澳门新浦京电子游戏 18

  DocumentRoot “D:wamp64wwwtest”

  第三步:修改D:/Development/Apache24/conf/httpd.conf文件中第39行代码中ServerRoot值。

  #设置文件夹访问控制,其路径要和上一行的DocumentRoot一样,

  修改前:

  

  澳门新浦京电子游戏 19

    #用于显示设定“可显示文件列表”(当无可显示网页的时候)

  修改后:

    Options Indexes

  澳门新浦京电子游戏 20

    #启用文件夹访问控制的文件.htaccess设置

  第四步:使用httpd -t命令手动检验Apache的配置。

    AllowOverride All

  澳门新浦京电子游戏 21

    #请求控制

  第五步:将D:/Development/Apache24/conf/httpd.conf文件中所有的C:Apache24变为D:/Development/Apache24。

    Require all granted

  第六步:修改完成后,再次手动检验,页面效果如下,安装成功!

    #默认打开的页面设置

  澳门新浦京电子游戏 22

    DirectoryIndex index.php index.html

  集成安装

  

  采用集成开发环境安装的方式非常简单,但不够灵活,同时不利于学习,一般来讲不推荐使用。我们在这里做个简单介绍。

 

  集成环境安装包:phpStudy(可以在网上搜索下载,也可以进QQ群下载),这里就不粘贴下载地址了。

然后,找到hosts文件,win10的hosts文件路径为:

  澳门新浦京电子游戏 23

 

  直接点击上图的exe文件,当屏幕右下角出现phpStudy图表时,说明Apache服务已经开始运行。完成后页面如下所示:

 代码如下

  澳门新浦京电子游戏 24

C:WindowsSystem32driversetc

  

#每个系统都不一样,可以去问问百度

  2.2 Apache的配置

 

  Apache的配置主要修改D:DevelopmentApache24conf目录下的httpd.conf文件的内容,具体配置包括如下几个方面:

在文件末尾处添加127.0.0.1www.test.com(注意中间的空格不要丢),保存。
*如果保存提示另存为的话,可以先另存为,然后修改另存为的文件名为hosts,覆盖掉原来的hosts文件

  监听端口

 

  监听端口可以任意修改为一个未被其他程序监听的端口,可以通过设置配置文件httpd.conf文件中的Listen指令后面的数字来修改。在本示例中,博主将监听端口设置为默认的80端口。如下图

 代码如下

  澳门新浦京电子游戏 25

  网站根目录的配置

# Additionally, comments (such as these) may be inserted on individual

  Web服务核心就是把我们电脑上的静态页面让外部服务器访问到。我们不是想让我们电脑上所有的文件夹都可以让别人访问,只有一个文件夹可以被别人访问,那个文件夹我们称为网站。

# lines or following the machine name denoted by a’#’symbol.

  网站根目录就是存放我们网站文件的最顶层目录,通常Url中域名后面第一个斜线对应的就是网站根目录。

#

  注:动态网站情况比较特殊,需要单独考虑。

# For example:

  默认Apache的网站根目录是安装目录中的htdocs文件夹,在博主的开发环境中,对应D:DevelopmentApache24htdocs文件夹。为了方便对网站文件的管理,一般我们会将其设置在一个自定义目录中(如果你不介意其实不修改也无所谓)。

#

  通过修改配置文件httpd.conf中的网站根目录选项,设置默认网站根目录。博主在F盘建立一个名为www的文件夹,作为网站根目录。具体修改如下:

#  102.54.94.97  rhino.acme.com     # source server

  第一步:在浏览器地址栏输入localhost,出现D:DevelopmentApache24htdocs下的index.html页面,此时我们还可以访问到。

#   38.25.63.10  x.acme.com       # x client host

  澳门新浦京电子游戏 26

 

  第二步:在配置文件中,修改网站根目录,将根目录设置为:F:www

# localhost name resolution is handled within DNS itself.

  澳门新浦京电子游戏 27

# 127.0.0.1   localhost

  此时重新访问http:localst,提示没有权限访问这台服务器

#  ::1      localhost

  澳门新浦京电子游戏 28

 

  第三步:解决上述访问权限问题

127.0.0.1www.test.com

  ①Apache配置文件中权限访问代码1如下所示:

 

  澳门新浦京电子游戏 29

修改hosts的目的是为了在浏览器访问时,系统不会把域名(www.test.com)提交到DNS服务器,而是直接根据hosts文件找到IP地址(此时是本地),提交解析。这样我们本地的服务器就可以解析这个域名了。

  在中,Directory表示目录,“/”斜线通指我们电脑上所有的文件夹。上述四行代码就是为网站配置访问权限的。在中,所有的访问请求都是被拒绝的。即指的是这个网站下的所有的文件夹都是不允许访问的。

澳门新浦京电子游戏 30

  ②Apache配置文件中权限访问代码2如下所示:

4、局域网远程访问

  澳门新浦京电子游戏 31

如果需要在局域网中能通过链接访问站点(例如开发web
app时使用手机测试),那么就需要开启服务器远程访问权限了。

  在中,设置了网站根目录。第251行又出现了<Directory
/></Directory>标签,通过阅读代码,可以发现,下面的Directory是给网站开了一个小门允许用户访问,所以将251行代码中的${SRVROOT}/htdocs修改为文件根目录,在F:www文件夹下建立一个html页面,访问结果如下:

打开apache配置文件httpd.conf

  澳门新浦京电子游戏 32

安装目录binapacheapache2.4.23confhttpd.conf

  

修改AllowOverride和Require配置为如下

  

 

  默认文档配置

 代码如下

  当客户端访问的是一个目录而不是一个具体文件时,服务器默认返回这个目录下的某个文档,这个文档就称为默认文档。

DocumentRoot “${INSTALL_DIR}/www”

  澳门新浦京电子游戏 33

  …

  配置文件的第284行DirectoryIndex,默认文档可以设置多个(由前到后依次去找,找到为止,如果没有找到任何一个,则启用目录浏览)

  AllowOverride all

  目录浏览

  Require all granted

  目录浏览指的是在浏览到一个文件夹的时候,如果文件夹中没有默认文档,就会把整个文件夹的结构显示出来。这种做法非常不可取,规避如下:

  …

  澳门新浦京电子游戏 34

 

  虚拟主机配置

同时需要修改httpd-vhosts.conf文件,修改相同的配置

  如果一台机器上只有一个网站的话,没有任何问题,但是如果想要在一台机器上部署多个站点,就必须通过配置虚拟主机的方法解决。

 

  由于后期对虚拟主机的配置操作非常常见,所以我们一般将虚拟主机的配置单独放到一个配置文件中,然后在主配置文件中引入,避免破坏主配置文件的其他配置。

 代码如下

  第一步:在主配置文件httpd.conf中取消第509行对引入虚拟主机配置文件的代码注释

  ServerName localhost

  澳门新浦京电子游戏 35

  DocumentRoot D:/wamp64/www

  第二步:找到Apache的虚拟主机配置文件D:DevelopmentApache24confextrahttpd-vhosts.conf,添加一个如下的虚拟主机配置节点。在该文件中,有两个默认的示例代码,可以注释掉。

  

  澳门新浦京电子游戏 36

    …

  上图为虚拟主机的配置,如果要配置多个网站虚拟主机,可以复制上述代码,修改文件根目录、权限设置、域名、日志文件等。

    AllowOverride All

  注意:

    Require all granted

  ①修改hosts文件达到访问域名的目的,原因很简单,这个域名不是我们自己的,我们没办法修改这个域名在公网上的DNS。

  

  ②如果使用了虚拟主机,默认必须全部使用虚拟主机,即之前的默认网站必须通过虚拟主机方式配置,否则访问不到。

 

  ③如果虚拟主机的端口使用的不是80端口,需要在主配置文件中添加一对对这个端口的监听。

若只需要访问其中某一个站点,则首先需要给这个站点配置虚拟主机,然后在该虚拟主机的配置中修改AllowOverride和Require

  必看:上述所有配置如果要起作用,必须重启Apache服务器。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本网站。

  2.3 PHP的安装

  安装好Apache之后,开始安装PHP模块。它是开发和运行程序的核心。在Windows中PHP安装有两种方式:一种是使用CGI二进制文件;另一种是使用Apache模块DLL,其中第二种方式比较常见。

  安装文件:见QQ群或者去官网下载。

  第一步:将压缩包解压至指定目录,博主解压在D:DevelopmentPHP文件夹下。注意解压文件中必须包括php7apache2_4.dll文件,解压目录为纯英文目录

  第二步:在Apache中添加PHP模块

  澳门新浦京电子游戏 37

  第三步:在<IfModule mime_module>节点中添加.php扩展名解析支持

  澳门新浦京电子游戏 38

  第四步:默认文档配置节点<IfModule
dir_module>中添加index.php文件

  澳门新浦京电子游戏 39

  重启Apache

  配置完毕,我在site2站点下写一个php文件,显示效果如图:

  澳门新浦京电子游戏 40

  

  澳门新浦京电子游戏 41

  

  

  

发表评论

电子邮件地址不会被公开。 必填项已用*标注