Windows 系统上的安装

目录

在现代 Microsoft Windows 系统上安装 PHP,并使用常见的 Web 服务器推荐配置。

建议在生产环境中使用官方发布的 Windows 版本的 PHP。但是,欢迎您从源代码构建 PHP。您需要 Visual Studio 环境。参见 » 分步构建说明

添加注释

用户贡献的注释 3 个注释

379
SmugWimp at smugwimp dot com
18 年前
如果您对 PHP.ini 文件进行更改,请考虑以下事项。

(我正在 W2K 服务器上运行 IIS5。我不确定 2K3)

PHP 只有在 Web 服务器重新启动后才会“采用”更改,这并不意味着通过 MMC。通常,人们只需重新启动。但您也可以使用以下命令,以实现更快的“周转”。在命令提示符下,键入

iisreset /stop

这将停止 Web 服务器服务。然后键入

net start w3svc

这将重新启动 Web 服务器服务。比重新启动快得多,因此您可以使用旧的更快地检查您的更改

<?php>
phpinfo();
?>

在您的页面中的某个位置。

我希望我能记住我在哪里读到这个提示;这不是我想出来的...
88
lukasz at szostak dot biz
18 年前
您可以在同一 Apache 服务器上运行多个版本的 PHP。我见过很多不同的解决方案指向如何实现这一点,但大多数解决方案都需要安装额外的 Apache 实例、重定向端口/主机等,这对我不够满意。
最后,我找到了迄今为止我见过的最简单的解决方案,它仅限于重新配置 Apache 的 httpd.conf。

我的目标是让 PHP5 成为我的 DocumentRoot(在我的情况下为 d:/htdocs)中 .php 文件的默认脚本语言,而 PHP4 则用于指定的 DocumentRoot 子目录。

这是它(Apache 的 httpd.conf 内容)

---------------------------
# 用您的 PHP4 目录替换
ScriptAlias /php4/ "c:/usr/php4/"
# 用您的 PHP5 目录替换
ScriptAlias /php5/ "c:/usr/php5/"

AddType application/x-httpd-php .php
Action application/x-httpd-php "/php5/php-cgi.exe"

# 为每个包含 PHP4 代码的目录填充此内容
<Directory "d:/htdocs/some_subdir">
Action application/x-httpd-php "/php4/php.exe"
# 您的 PHP4 php.ini 文件所在的目录
SetEnv PHPRC "c:/usr/php4"
</Directory>

# 记住将此部分放在上面部分下方
<Directory "d:/htdocs">
# 您的 PHP5 php.ini 文件所在的目录
SetEnv PHPRC "c:/usr/php5"
</Directory>
---------------------------

此解决方案不限于仅并行使用两个版本的 PHP。您可以使用 httpd.conf 内容来配置尽可能多的 PHP 版本。
您也可以对同一个 PHP 版本使用多个 php.ini 配置文件(但用于不同的 DocumentRoot 子文件夹),这在某些情况下可能很有用。

记住将您的 php.ini 文件放在“SetEnv PHPRC...”行中指定的目录中,并确保其他目录(如 Windows 中的 c:\windows)中没有 php.ini 文件。

最后,正如您所见,我以 CGI 模式运行 PHP。这有其优点和局限性。如果您必须以 Apache 模块运行 PHP,那么...抱歉 - 您必须使用其他解决方案(一如既往,最好的建议是:谷歌搜索!)。

希望对某人有所帮助。
24
jp at iticonsulting dot nl
19 年前
如果您在 Windows/IIS5 上遇到 404 页面未找到,请查看 C:\SYSTEM32\INETSRV\URLSCAN

那里有一个 .ini 文件,它会阻止某些文件由 IIS 提供服务,即使它们存在,IIS 也会给出 404。urlscan 日志文件(同一位置)应让您了解是否有任何参数阻止页面加载。
To Top