文件下载及官方网站
- VC运行库Latest下载页:Latest supported Visual C++ Redistributable downloads | Microsoft Learn
- apache httpd官网:Welcome! - The Apache HTTP Server Project
- 下载页:Apache VS17 binaries and modules download
- php官网:PHP: Hypertext Preprocessor
- 下载页:PHP For Windows: Binaries and sources Releases
安装
VC运行库
- 从2005~2022一个一个下载安装,也可以从发现大世界-vc 运行库-详情下载打包好的
- 注意版本,VS17 The latest version is
v14.44.35211.0
PHP
下载后解压
重命名php.ini配置文件
- 去掉php.ini里面; On windows:下面那行的注释
- 添加环境变量xxx\php目录和xxx\php\ext目录,xxx为路径
- 打开cmd输入php -v看到版本号则安装成功
Apache
- 下载后解压
- 修改httpd.conf里面Define SRVROOT后面的路劲
- 修改ServerName行并取消注释
- 以管理员身份打开CMD进入bin目录
- 键入httpd -k install -n apache安装服务
- 键入net start apache启动服务
- 打开浏览器键入http://127.0.0.1测试是否安装成功
FastCGI配置
- 从刚才下载apache下面那里下载mod_fcgid
- 解压后将mod_fcgid.so复制到apache的modules目录
- 在apache\conf\extra里面创建httpd-fcgid.conf配置文件
- httpd-fcgid.conf里面键入如下内容,PHP路径填写自己的
-
<IfModule fcgid_module>
FcgidInitialEnv PATH "c:/php;C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;"
FcgidInitialEnv SystemRoot "C:/Windows"
FcgidInitialEnv SystemDrive "C:"
FcgidInitialEnv TEMP "C:/WINDOWS/Temp"
FcgidInitialEnv TMP "C:/WINDOWS/Temp"
FcgidInitialEnv windir "C:/WINDOWS"
FcgidIOTimeout 64
FcgidConnectTimeout 16
FcgidMaxRequestsPerProcess 1000
FcgidMaxProcesses 50
FcgidMaxRequestLen 8131072# Location php.ini:
FcgidInitialEnv PHPRC "d:/server/php"
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000<Files ~ "\.php$>"
Options ExecCGI SymLinksIfOwnerMatch
AddHandler fcgid-script .php
FcgidWrapper "d:/server/php/php-cgi.exe" .php
</Files>
</IfModule>
- 配置跟下载里面的相同,但多了一条Options ExecCGI SymLinksIfOwnerMatch
- 在apache httpd.conf配置文件中加入如下两行
- LoadModule fcgid_module modules/mod_fcgid.so
- Include conf/extra/httpd-fcgid.conf
- CMD中键入net stop apache
- CMD中键入net start apache
- 重启apache
- 在apache目录下的htdocs目录中新建一个后缀名为.php的文件例如info.php里面键入<?php phpinfo(); ?>
- 浏览器访问此文件验证配置成功与否
结语
开发角度对比windows下nginx的优缺点
- apache以访问方式运行不用再去kill nginx了
- 不用再去找隐藏php黑窗口的VBS了
- apache配置对比nginx从个人角度看稍微复杂