Php与Apache环境配置

Php与Apache环境配置

  • 1.[Apache的下载安装:](https://blog.csdn.net/qq_42194657/article/details/102933368)
  • 2、PHP下载:
    • 2.1、下载地址:[http://php.net/downloads.php](http://php.net/downloads.php)
    • [2.1、版本选择:如果是与 Apache 搭配,建议选择 Thread Safe 版本;如果是与 CGI 或者 FAST-CGI 搭配,建议选择 Non Thread Safe 版本。](#2.1、版本选择:如果是与 Apache 搭配,建议选择 Thread Safe 版本;如果是与 CGI 或者 FAST-CGI 搭配,建议选择 Non Thread Safe 版本。)
  • 3、PHP环境搭建:
    • 3.3.1、修改扩展文件的路径:
    • 3.3.2、修改需要加载的扩展文件,下面代码是取消部分扩展程序的注释之后的代码:
    • 3.3.3、设置默认的时区:
    • [3.3.4、设置 ssl :](#3.3.4、设置 ssl :)
    • [3.4、修改 Apache24\conf\ 目录下的 httpd.conf 配置 Apache ,让 Apache 和 PHP 协同工作;](#3.4、修改 Apache24\conf\ 目录下的 httpd.conf 配置 Apache ,让 Apache 和 PHP 协同工作;)
    • [3.4.1、DocumentRoot 设置:](#3.4.1、DocumentRoot 设置:)
    • [3.4.2、修改默认的索引,以支持 PHP :](#3.4.2、修改默认的索引,以支持 PHP :)
    • [3.4.3、开启 rewrite 功能:将下面这行代码前面的 # 去掉:](# 去掉:)
    • [3.4.4、加载 PHP 模块,注意绝对路径:](#3.4.4、加载 PHP 模块,注意绝对路径:)
    • [3.5、如果安装的PHP x64位版本,Apache也需要是x64位版本的。然后还要将php目录下的libeay32.dll、ssleay32.dll、libssh2.dll以及ext目录下的php_curl.dll等四个文件,都复制放到System32目录下。否则curl扩展无法使用。](#3.5、如果安装的PHP x64位版本,Apache也需要是x64位版本的。然后还要将php目录下的libeay32.dll、ssleay32.dll、libssh2.dll以及ext目录下的php_curl.dll等四个文件,都复制放到System32目录下。否则curl扩展无法使用。)
  • [4、Apache + PHP 启动运行测试:](#4、Apache + PHP 启动运行测试:)
    • [4.1、在 C:\HttpWeb\php_7.1.33\www 目录下,创建 index.php 文件,文本内容如下:](#4.1、在 C:\HttpWeb\php_7.1.33\www 目录下,创建 index.php 文件,文本内容如下:)
    • [4.2、重启 Apache 服务,打开浏览地址栏输入: localhost:8088/index.php 或者 127.0.0.1:8088/index.php ,就可以打开 PHP 页面.](#4.2、重启 Apache 服务,打开浏览地址栏输入: localhost:8088/index.php 或者 127.0.0.1:8088/index.php ,就可以打开 PHP 页面.)
  • 引用

1.Apache的下载安装:

2、PHP下载:

2.1、下载地址:http://php.net/downloads.php

2.1、版本选择:如果是与 Apache 搭配,建议选择 Thread Safe 版本;如果是与 CGI 或者 FAST-CGI 搭配,建议选择 Non Thread Safe 版本。

3、PHP环境搭建:

  • 将下载的 .zip 压缩包解压到指定的安装目录,此处安装路径为:C:\HttpWeb\php_7.1.33。
  • 将 PHP 的根目录下的 php.ini-development 或者 php.ini-production复制一份并改名为 php.ini,作为PHP的配置文件;
  • 打开php.ini,修改配置信息:
    说明:
    a、ini文件的注释是分号(英文分号),所以取消注释就删除分号;
    b、${phphome}是PHP的根目录,即:C:\HttpWeb\php_7.1.33,配置文件中写成绝对路径。

3.3.1、修改扩展文件的路径:

3.3.2、修改需要加载的扩展文件,下面代码是取消部分扩展程序的注释之后的代码:

php 复制代码
extension=php_bz2.dll
extension=php_curl.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll      ; Must be after mbstring as it depends on it
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pgsql.dll
;extension=php_shmop.dll
 
; The MIBS data available in the PHP distribution must be installed. 
; See http://www.php.net/manual/en/snmp.installation.php 
;extension=php_snmp.dll
 
extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll

3.3.3、设置默认的时区:

php 复制代码
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone 选择时区列表网址
date.timezone = Asia/Shanghai

3.3.4、设置 ssl :

php 复制代码
[openssl]
; The location of a Certificate Authority (CA) file on the local filesystem
; to use when verifying the identity of SSL/TLS peers. Most users should
; not specify a value for this directive as PHP will attempt to use the
; OS-managed cert stores in its absence. If specified, this value may still
; be overridden on a per-stream basis via the "cafile" SSL stream context
; option.
openssl.cafile= cacert.pem

根据需求可以自己添加扩展。

3.4、修改 Apache24\conf\ 目录下的 httpd.conf 配置 Apache ,让 Apache 和 PHP 协同工作;

3.4.1、DocumentRoot 设置:

修改前:默认的是 Apache24 下的 htdocs 目录:

修改后:指定到自定义的路径,但是要记住这个路径。

3.4.2、修改默认的索引,以支持 PHP :

修改前:

php 复制代码
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

修改后:

php 复制代码
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir_module>
    DirectoryIndex index.html index.php index.htm
</IfModule>

3.4.3、开启 rewrite 功能:将下面这行代码前面的 # 去掉:

复制代码
LoadModule rewrite_module modules/mod_rewrite.so4

3.4.4、加载 PHP 模块,注意绝对路径:

如果是 PHP 5,在 httpd.conf 文件最后添加如下代码:

php 复制代码
#php5.6
LoadModule php5_module C:/HttpWeb/php-5.6.33/php5apache2_4.dll 
<IfModule php5_module> 
    PHPIniDir "C:/HttpWeb/php-5.6.33/" 
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
</IfModule>

如果是 PHP 7,则相应的更改,示例如下:

php 复制代码
#php7
LoadModule php7_module C:/HttpWeb/php_7.1.33/php7apache2_4.dll
<IfModule php7_module> 
PHPIniDir "D:/HttpWeb/php_7.1.33/" 
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>

3.5、如果安装的PHP x64位版本,Apache也需要是x64位版本的。然后还要将php目录下的libeay32.dll、ssleay32.dll、libssh2.dll以及ext目录下的php_curl.dll等四个文件,都复制放到System32目录下。否则curl扩展无法使用。

4、Apache + PHP 启动运行测试:

4.1、在 C:\HttpWeb\php_7.1.33\www 目录下,创建 index.php 文件,文本内容如下:

php 复制代码
<?php
echo phpinfo();
?>

4.2、重启 Apache 服务,打开浏览地址栏输入: localhost:8088/index.php 或者 127.0.0.1:8088/index.php ,就可以打开 PHP 页面.

引用

最后说明一点儿,PHP 环境搭建可以借助于 PHP 开发环境搭建工具,下载地址:http://www.php.cn/xiazai/gongju或者http://www.wampserver.com/,在此处就不介绍工具安装方法了。

相关推荐
JaguarJack15 小时前
为什么 PHP 闭包要加 static?
后端·php·服务端
ServBay2 天前
垃圾堆里编码?真的不要怪 PHP 不行
后端·php
用户962377954482 天前
CTF 伪协议
php
BingoGo4 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack4 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo5 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack5 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack6 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo6 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack7 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel