php - 在 Apache 启动/重启时在后台运行 PHP 脚本 (Windows Server)

标签 php windows apache windows-server-2008-r2

我已经按照本手册中的说明在 Windows Server 2008 上安装了 Apache 2.4 和 PHP 5.4: Apache installing manual . Apache 现在作为服务运行。

我的应用程序需要一个 php websocket 脚本在后台运行。我手动运行它:

php myscript.php

问题是:有没有办法在系统(apache)重启时自动启动后台脚本?

我找到了以下 topic ,但我不知道在哪里可以找到适用于 Windows 的 apache 启动脚本。

我们将不胜感激。

最佳答案

我想出了一个解决方案:)

  • 创建一个指向您的 Apache 目录的环境变量

    APACHE_HOME = C:/PATH/TO_APACHE
    

  • 重命名 %APACHE_HOME%\bin\httpd.exe%APACHE_HOME%\bin\httpdVendor.exe
  • 创建一个批处理文件并放入以下代码:

    php myscript.php
    %APACHE_HOME%\bin\httpdVendor.exe -k runservice
    exit 0
    

  • 下载/安装 免费软件BatToExeConverter (下一个,下一个,...)
  • 打开已安装的转换器并打开您新创建的批处理文件
  • 点击按钮Build EXE(使用默认配置)
  • 保存文件:%APACHE_HOME%\bin\httpd.exe
  • 启动您的 Apache 服务器
  • 测试于:Windows 7、Apache 2.4、Advanced Bat to Exe Converter 2.92

    关于php - 在 Apache 启动/重启时在后台运行 PHP 脚本 (Windows Server),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14718865/

    相关文章:

    javascript - 如何在未完成的情况下从 ajax 触发的 PHP 调用获取更新?

    php限制对目录中文件的访问

    windows - 如何在 Windows 上从命令提示符更新 golang?

    Node.js 安装(Windows 安装程序)在 Windows 10 64 位上提前终止

    apache - 如何在 Apache 代理后面运行 IPython

    linux - 配置 apache 网络服务器以使用 IP 地址(动态)公开查看网络上的默认页面

    php - 使用 XPATH 进行查询,然后将子项附加到其中

    php - 在 laravel 的自定义中间件中使用 session

    c - 如何使用过滤器驱动程序(内核)捕获文件访问尝试并提供对话框以允许/拒绝(用户)?

    php - Apache+PHP 截断后/上传