win10系统Apache以 FastCGI方式运行PHP

文件下载及官方网站

  • 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从个人角度看稍微复杂

参考

  • PHP: 在Windows系统上安装 Apache 2.x - Manual
  • Setting up PHP with FastCGI on Windows using Apache

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/92495.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/92495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MCP与企业数据集成:ERP、CRM、数据仓库的统一接入

MCP与企业数据集成&#xff1a;ERP、CRM、数据仓库的统一接入 &#x1f31f; Hello&#xff0c;我是摘星&#xff01; &#x1f308; 在彩虹般绚烂的技术栈中&#xff0c;我是那个永不停歇的色彩收集者。 &#x1f98b; 每一个优化都是我培育的花朵&#xff0c;每一个特性都是我…

【milvus检索】milvus检索召回率

Milvus中两种核心查询方式&#xff1a;暴力搜索&#xff08;Brute-force Search&#xff09; 和 近似最近邻搜索&#xff08;Approximate Nearest Neighbor, ANN&#xff09;。 逐一计算相似度&#xff1a;这是暴力搜索&#xff0c;能保证100%找到最相似的向量&#xff0c;但速…

docker Neo4j

Day 1 &#xff1a;Docker Desktop 基础熟悉 运行官方 hello-world 测试&#xff1a; docker -run hello-world 运行 Nginx 体验容器暴露端口&#xff1a; docker run -d -p 8080:80 nginx -d --detach 以 分离模式 运行容器 -p --publish 设置 宿主机与容器的端口映射。…

Win10_Qt6_C++_YOLO推理 -(1)MingW-opencv编译

先上效果图&#xff1a; 因为是一个为了尝试跑通的demo&#xff0c;美观、功能都先忽略哈。 一、环境 库版本下载链接备注cmakecmake-4.1.0-rc2-windows-x86_64.msihttps://cmake.org/download/make x86_64-15.1.0-release-posix-seh-ucrt-rt_v12-rev0.7zhttps://github.com/…

day060-zabbix监控各种客户端

文章目录0. 老男孩思想-一个人的背书1. zabbix各种客户端1.1 Windows Server监控1.2 网络设备监控1.3 java应用监控1.4 前端监控java程序故障2. 相关项监控3. 思维导图0. 老男孩思想-一个人的背书 学历、能力、态度、特长、人品、口碑&#xff08;身边的人、领导&#xff09; …

OpenCV 官翻 2 - 图像处理

文章目录色彩空间转换目标色彩空间转换目标追踪如何确定要追踪的HSV值&#xff1f;练习图像的几何变换目标变换缩放翻译旋转仿射变换透视变换其他资源图像阈值处理目标简单阈值化自适应阈值化大津二值化法Otsu二值化算法原理其他资源练习图像平滑处理目标二维卷积&#xff08;图…

动态路由协议基础

一、动态路由协议简介2.动态路由协议的基本功能二、动态路由协议分类对比项距离矢量&#xff08;如 RIP&#xff09;链路状态&#xff08;如 OSPF&#xff09;信息来源只听直接邻居说收集全网链路状态&#xff0c;自己建 “地图”计算逻辑邻居给的距离 1&#xff0c;简单累加用…

netstat -tunlp | grep的作用

​​一、命令整体结构解析​​命令由两部分通过管道符 |连接&#xff1a;netstat -tunlp&#xff1a;核心网络状态统计命令&#xff0c;输出指定类型的网络连接信息&#xff1b;grep&#xff1a;文本搜索工具&#xff0c;用于过滤 netstat的输出结果&#xff0c;仅保留符合特定…

教育数字化革命:低代码破局与未来展望

当下&#xff0c;教育领域正经历前所未有的深刻变革——教育数字化转型。这并非简单的技术叠加&#xff0c;而是从教育理念到模式的全方位重塑&#xff0c;已成为推动教育高质量发展、助力我国迈向教育强国的核心驱动力。数字技术正以前所未有的速度和力度&#xff0c;全方位重…

云服务器磁盘IO性能优化的测试与配置方法

云服务器磁盘IO性能优化的测试与配置方法在云计算环境中&#xff0c;磁盘IO性能直接影响着应用程序的响应速度和系统整体稳定性。本文将深入解析云服务器磁盘IO性能优化的关键技术路径&#xff0c;从测试方法论到配置调整方案&#xff0c;帮助运维人员突破存储瓶颈。我们将重点…

Python Day22 - 复习日

浙大疏锦行 Pythonday22 本周学习内容主要是有关降维的一些内容以及基本的数组操作&#xff1a; 数组的常见操作以及shape聚类算法的选择以及常用评估指标、聚类后的结果分析特征筛选方法&#xff1a;方差筛选、lasso等SVD进行降维常见的降维算法&#xff1a;LDA、PCA等

飞算JavaAI文字需求描述功能:高效驱动项目开发的智能解决方案

在数字化开发浪潮中&#xff0c;如何将模糊的需求快速转化为具体的开发指令&#xff0c;是提升项目效率的关键环节。飞算JavaAI推出的文字需求描述功能&#xff0c;以自然语言交互为核心&#xff0c;为开发者和项目管理者提供了一套高效、精准的需求转化与项目管理方案&#xf…

探索自然语言处理NLP的Python世界

文本预处理&#xff1a;数据清洗与标准化 在自然语言处理&#xff08;NLP&#xff09;的旅程中&#xff0c;文本预处理是至关重要的第一步。原始文本数据往往包含噪声、不一致性以及各种格式问题&#xff0c;直接影响后续模型的性能。文本预处理旨在将文本转化为统一、规范的格…

ECMAScript(简称 ES)和 JavaScript 的关系

ECMAScript&#xff08;简称ES&#xff09;和JavaScript的关系常常令人困惑。简单来说&#xff1a;ECMAScript是标准&#xff0c;JavaScript是实现。以下从多个维度详细解析它们的区别与联系&#xff1a; 一、定义与核心关系ECMAScript 标准化规范&#xff1a;由ECMA国际&#…

笔试——Day16

文章目录第一题题目思路代码第二题题目&#xff1a;思路代码第三题题目&#xff1a;思路代码优化&#xff08;滑动窗口&#xff09;第一题 题目 字符串替换 思路 模拟 当遍历到正常字符时&#xff0c;直接加入结果答案&#xff1b;当遍历到占位符时&#xff0c;按顺序使用arg…

第十四届蓝桥杯青少Scratch国赛真题——太空大战

明天蓝桥杯大赛青少组省赛报名就开始报名了&#xff0c;小伙伴们记得设好闹钟&#xff0c;去抢报呀~&#xff08;去年是名额有限&#xff0c;全靠抢&#xff0c;今年估计也是&#xff0c;大家伙记得快点报名就对了&#xff09;报名通道将于&#x1f4c5;2025年7月23日13&#x…

小玩 Lifecycle

导包 [versions] lifecycle_version "2.3.1"[libraries] androidx-viewmodel { group "androidx.lifecycle", name "lifecycle-viewmodel-ktx", version.ref "lifecycle_version" } androidx-livedata { group "androidx…

HttpSecurity详解

HttpSecurity 是 Spring Security 中用于配置 HTTP 安全性的核心类。它允许你定义各种安全规则和过滤器,以保护 Web 应用程序中的不同 URL 和请求。下面是对 HttpSecurity 中常见配置的详细解析,以及每个配置的意义。 1. csrf 配置: http.csrf(customizers -> customi…

FFmpeg+javacpp中仿ffplay播放

FFmpegjavacpp中仿ffplay播放1、[ffplay 基于 SDL 和 FFmpeg 库的简单媒体播放器](https://ffmpeg.org/ffplay.html)2、FFmpeg帧捕获器 : FFmpegFrameGrabber2.1 grabSamples()2.2 grabImage()2.3 grab() 获取音视频帧FFmpegjavacppjavacv使用 ffmpeg-6.0\fftools\ffplay.c 1、…

【后端】 FastAPI

&#x1f680; FastAPI 是什么&#xff1f;FastAPI 是一个用于构建 Web API 的 Python 框架。可以理解成&#xff1a;&#x1f9f0; “一个工具箱&#xff0c;让你用 Python 写出能被浏览器、App、小程序调用的接口&#xff08;API&#xff09;。”&#x1f527; 那什么是 API&…