无论是在学习中还是在项目开发中,开发环境的不同可能会导致很多问题。因此,在讲解如何使用PHP开发项目前,需讲解如何在Windows操作系统中搭建开发环境,确保读者的开发环境和本书使用的环境一致。本节将对Visual Studio Code、Apache HTTP Server和PHP的安装进行详细讲解。
Visual Studio Code(简称VS Code)是由微软开发的一款代码编辑器,具有免费、开源、轻量级、高性能、跨平台等特点。下面讲解如何下载、安装和使用VS Code编辑器。
①打开浏览器,访问VS Code编辑器的官方网站,如图1-1所示。在图1-1所示的页面中,单击“Download for Windows”按钮,该页面会自动识别当前的操作系统并下载相应的安装包。
②如果需要下载其他系统的安装包,单击按钮右侧的小箭头“ ”打开下拉菜单,就可以进行其他系统安装包的下载,如图1-2所示。
图1-1 VS Code编辑器的官方网站
图1-2 其他系统安装包的下载
③下载VS Code编辑器的安装包后,在下载目录中找到该安装包,如图1-3所示。双击安装包,启动安装程序,然后按照程序的提示一步一步进行操作,直到VS Code安装完成。
④VS Code编辑器安装成功后,启动该编辑器即可进入其初始界面,如图1-4所示。
⑤VS Code编辑器的默认语言是英文,如果想要切换为中文,单击图1-4中左侧栏的第5个图标 ,在搜索框中输入关键词“Chinese”找到中文语言扩展,单击“Install”按钮进行安装,如图1-5所示。
图1-3 VS Code编辑器的安装包
图1-4 VS Code编辑器的初始界面
⑥中文语言扩展安装成功后,需要重新启动VS Code编辑器才会生效。重新启动VS Code编辑器后,VS Code编辑器的中文界面如图1-6所示。
图1-5 安装中文语言扩展
图1-6 VS Code编辑器的中文界面
从图1-6可以看出,当前VS Code编辑器的语言已经成功切换为中文。
⑦创建D:\www文件夹作为项目的根目录,单击图1-6中的“打开文件夹”,打开D:\www文件夹,在该文件夹中创建index.html以查看编辑器的显示效果,index.html的示例代码如下。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> Hello </body> </html>
VS Code编辑器代码编辑环境如图1-7所示。
在图1-7中,左侧是资源管理器。在资源管理器中,可以查看项目的目录结构。在资源管理器中选择一个文件后,即可在右侧的代码编辑区域对该文件进行编辑。
图1-7 VS Code编辑器代码编辑环境
Apache HTTP Server(简称Apache)是Apache软件基金会发布的一款Web服务器软件,因其具有开源、跨平台和高安全性的特点而被广泛使用。下面讲解如何安装Apache。
通常情况下,我们可以从软件的官方网站获取软件包。但是Apache的官方网站只提供源代码,源代码不能直接安装,需要先手动编译才能安装。由于手动编译比较麻烦,这里我们选择已经编译好的Apache软件包。
在Apache官方网站中,找到适用于Windows系统的第三方编译版本的超链接,具体如图1-8所示。
在图1-8中,Bitnami WAMP Stack、WampServer、XAMPP网站提供的是包含Apache、MySQL、PHP等软件的集成包,为了单独安装Apache,应使用ApacheHaus或Apache Lounge网站提供的软件包。
本书以Apache Lounge网站提供的软件包为例进行讲解,从Apache Lounge网站获取软件包,如图1-9所示。
图1-8 适用于Windows系统的第三方编译版本的超链接
图1-9 从Apache Lounge网站获取软件包
在图1-9中,找到httpd-2.4.55-win64-VS17.zip软件包并下载即可。
值得一提的是,Apache软件包使用Microsoft Visual C++ 2017进行编译,在安装Apache前需要先安装Microsoft Visual C++ 2017运行库。
在C盘根目录下创建一个名称为web的文件夹,作为开发环境的安装位置,并在web文件夹中创建apache2.4子文件夹,用于存放Apache的文件。
将下载的软件包解压到Apache的安装目录中,并配置服务器的根目录和域名,具体步骤如下。
①将软件包httpd-2.4.55-win64-VS17.zip中apache24目录下的文件解压到C:\web\apache2.4目录下。解压后,Apache目录结构如图1-10所示。
图1-10 Apache目录结构
图1-10中,bin是Apache的应用程序所在的目录,conf是配置文件目录,htdocs是默认的网站根目录,modules是Apache的动态加载模块所在的目录。
②配置服务器根目录。使用VS Code编辑器打开Apache的配置文件conf\httpd.conf,找到第37行配置,具体内容如下。
Define SRVROOT "c:/Apache24"
将上述配置中的路径修改为C:/web/apache2.4,修改后的配置如下。
Define SRVROOT "C:/web/apache2.4"
需要说明的是,配置文件通常使用“/”作为路径分隔符,而Windows系统通常使用“\”作为路径分隔符。因此,本书在描述配置文件中的路径时,统一使用“/”作为路径分隔符,在描述Windows系统中的路径时,统一使用“\”作为路径分隔符。
③配置服务器域名。在VS Code编辑器中按“Ctrl+F”组合键搜索ServerName,找到如下配置。
#ServerName www.example.com:80
上述配置开头的“#”表示该行是注释文本,删除“#”使这行配置生效,修改后的配置如下。
ServerName www.example.com:80
在上述配置中,可以根据需要将“www.example.com:80”修改成其他域名和端口号。
为了使读者熟悉Apache配置文件httpd.conf的使用,下面对Apache的常用配置项进行说明,具体如表1-1所示。
表1-1 Apache的常用配置项
值得一提的是,读者可以根据实际需要对Apache的常用配置项进行修改,如果修改时出现错误,会造成Apache无法安装或无法启动。建议读者在修改前先备份配置文件。
Apache服务是指运行在Apache服务器上的服务,Apache服务器本身提供基础的Web服务器功能,但它也可以通过加载和配置不同的模块来提供额外的功能和服务。下面讲解如何安装Apache服务,具体步骤如下。
①在“开始”菜单的搜索框中输入“cmd”找到命令提示符工具,选择“以管理员身份运行”。
②打开命令提示符窗口后,切换到Apache的bin目录,具体命令如下。
cd C:\web\apache2.4\bin
③执行安装Apache服务的命令,具体命令如下。
httpd -k uninstall -n Apache2.4
在上述命令中,httpd表示Apache的服务程序httpd.exe,-k install表示将Apache安装为Windows系统的服务,-n Apache2.4表示将Apache服务的名称设置为Apache2.4。
安装Apache服务的结果如图1-11所示。
图1-11 安装Apache服务的结果
如果需要卸载Apache服务,可以使用如下命令进行卸载。
httpd -k uninstall -n Apache2.4
Apache提供了服务监视工具Apache Service Monitor,用于管理Apache服务的启动和停止。该工具即bin目录下的ApacheMonitor.exe,双击它后Windows系统的任务栏中会出现Apache服务器图标,单击图标并选择Apache2.4会弹出控制菜单,具体如图1-12所示。
图1-12 Apache任务栏图标及控制菜单
从图1-12可以看出,通过服务监视工具可以方便地控制Apache服务的启动、停止和重新启动。当单击Start时,图标由 变为 ,表示Apache服务启动成功。
启动Apache服务后,通过浏览器访问http://localhost,如果看到图1-13所示的画面,说明Apache正常运行。
图1-13 通过浏览器访问http://localhost
图1-13所示的“It works!”是htdocs\index.html这个网页的运行结果。htdocs目录是Apache默认站点,安装Apache服务器时会自动创建一个默认站点作为项目的根目录。读者也可以在htdocs目录下创建其他网页,通过“http://localhost/网页文件名”访问这些网页。
若要解析和执行PHP脚本,需要先安装PHP软件。PHP既可以独立运行,也可以作为Apache的模块运行。下面讲解如何将PHP安装为Apache的模块。
PHP的官方网站提供PHP最新版本的软件包,如图1-14所示。
在图1-14中,PHP的版本是8.2.3、8.1.16和8.0.28,本书使用8.2.3版本进行讲解。
PHP提供了线程安全(Thread Safe)与非线程安全(Non Thread Safe)两种软件包,在与Apache搭配使用时,应选择Thread Safe软件包。在下载页面中找到php-8.2.3-Win32vs16-x64.zip软件包并下载即可。
在C盘的web目录中创建php8.2文件夹,将PHP安装到此文件夹中进行管理。
①解压下载的PHP软件包,解压后的文件保存到C:\web\php8.2目录中,如图1-15所示。
图1-14 PHP官方网站
图1-15 PHP安装目录
在图1-15中,ext是PHP扩展文件所在的目录,php.exe是PHP的命令行应用程序,php8apache2_4.dll是Apache的DLL(Dynamic Linked Library,动态连接库)模块。
PHP的安装目录中默认没有PHP的配置文件,需要我们手动创建。在PHP安装目录中,有两个示例配置文件,其中,php.ini-development是适合开发环境的示例配置文件,php.ini-production是适合生产环境的示例配置文件。对初学者来说,推荐使用适合开发环境的示例配置文件。
②复制php.ini-development文件,将复制而来的文件重命名为php.ini,作为PHP的配置文件。
③配置PHP扩展的目录,在配置文件中搜索文本“extension_dir”,找到如下配置。
;extension_dir = "ext"
上述配置开头的“;”表示该行是注释文本,删除“;”使这行配置生效,将扩展路径修改为C:/web/php8.2/ext,修改后的配置如下。
extension_dir = "C:/web/php8.2/ext"
④配置PHP时区,搜索文本“date.timezone”,找到如下配置。
;date.timezone =
时区可以配置为UTC(协调世界时)或PRC(中国时区),修改后的配置如下。
date.timezone = PRC
打开Apache配置文件httpd.conf,在第186行(前面有一些LoadModule配置)的位置引入PHP模块,具体配置如下。
1 LoadModule php_module "C:/web/php8.2/php8apache2_4.dll" 2 <FilesMatch "\.php$"> 3 setHandler application/x-httpd-php 4 </FilesMatch> 5 PHPIniDir "C:/web/php8.2" 6 LoadFile "C:/web/php8.2/libssh2.dll"
在上述代码中,第1行配置表示将PHP作为Apache的模块来加载。第2~4行配置用于匹配以.php为扩展名的文件,将其交给PHP来处理。第5行配置指定PHP配置文件php.ini所在的目录。第6行配置加载PHP安装目录中的libssh2.dll文件,确保PHP的cURL扩展能够正确加载。
索引页是指访问一个目录时自动打开的文件。例如,index.html是默认索引页,在访问http://localhost时实际上访问的是http://localhost/index.html。
在Apache配置文件httpd.conf中搜索DirectoryIndex,找到如下配置。
1 <IfModule dir_module> 2 DirectoryIndex index.html 3 </IfModule>
在上述配置中,第2行的index.html是默认索引页。将index.php也添加为默认索引页,具体配置如下。
1 <IfModule dir_module> 2 DirectoryIndex index.html index.php 3 </IfModule>
上述配置表示在访问某个目录时,首先检测是否存在index.html,如果有,则显示;否则就继续检查是否存在index.php。
值得一提的是,如果一个目录中不存在索引页文件,在默认情况下,Apache会显示该目录下的文件列表。
修改Apache配置文件后,需要重新启动Apache服务器才能使配置生效。单击Windows系统任务栏中的Apache服务器图标,选择Apache2.4,单击Restart就可以重新启动Apache服务器。
重新启动Apache服务器后,PHP若成功安装为Apache的扩展模块,则会随Apache服务器一起启动。
使用VS Code编辑器在C:\web\apache2.4\htdocs目录中创建test.php文件,该文件的代码如下。
1 <?php 2 phpinfo(); 3 ?>
上述代码使用phpinfo()函数将PHP的状态信息输出到网页中。
通过浏览器访问http://localhost/test.php,如果读者看到图1-16所示的PHP配置信息,说明配置成功。否则,需要检查配置。
图1-16 PHP配置信息