当前位置: 首页 > article >正文

快速更改WampServer根目录php脚本

快速更改WampServer根目录php脚本

<?php
// 配置文件地址
$apacheConfPath = 'C:\Install\CTF\Wampserver\bin\apache\apache2.4.62.1\conf\httpd.conf';
$apacheConfPath2 = 'C:\Install\CTF\Wampserver\bin\apache\apache2.4.62.1\conf\extra\httpd-vhosts.conf';
// 新根目录地址
$newDocumentRoot = 'G:\Notes_and_Dictionary\book\CTF-codes\php-code-all-in-there\run_www';

// step 1
function change_set($apacheConfPath, $newDocumentRoot)
{
    $config = file_get_contents($apacheConfPath);
    if ($config === false) {
        die("无法读取配置文件: $apacheConfPath\n");
    }
    // 修改 DocumentRoot
    $patternDocRoot = '/^\s*DocumentRoot\s+"[^"]+"/m';
    $replacementDocRoot = 'DocumentRoot "' . $newDocumentRoot . '"';
    $config = preg_replace($patternDocRoot, $replacementDocRoot, $config, 1, $countDocRoot);

    if ($countDocRoot === 0) {
        die("未找到 DocumentRoot 指令。\n");
    }
    // 更改 <Directory
    $patternDocRoot = '/<Directory\s+"[^"]+">/m';
    $replacementDocRoot = '<Directory "' . $newDocumentRoot . '">';
    $config = preg_replace($patternDocRoot, $replacementDocRoot, $config, 1, $countDocRoot);

    if ($countDocRoot === 0) {
        die("未找到 <Directory 。\n");
    }
    // 保存修改后的配置文件
    if (file_put_contents($apacheConfPath, $config) === false) {
        die("无法写入修改后的配置文件: $apacheConfPath\n");
    }
}
// step 2
change_set($apacheConfPath, $newDocumentRoot);
change_set($apacheConfPath2, $newDocumentRoot);
echo "更改成功,请重启服务";

http://www.kler.cn/a/519534.html

相关文章:

  • 工厂模式 - 工厂方法模式、抽象工厂模式
  • vite环境变量处理
  • 【fly-iot飞凡物联】(20):2025年总体规划,把物联网整套技术方案和实现并落地,完成项目开发和课程录制。
  • 【第六天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-一种常见的贪心算法(持续更新)
  • 网络知识小科普--5
  • SpringBoot+Vue使用Echarts
  • 如何写美赛(MCM/ICM)论文中的Summary部分
  • kafka-保姆级配置说明(consumer)
  • 【算法】递归型枚举与回溯剪枝初识
  • 基于Django的就业系统的设计与实现
  • 使用python gitlab包来实现更新gitlab wiki page
  • 25.日常算法
  • Linux查看服务器的内外网地址
  • 【Linux网络编程】数据链路层--以太网协议
  • 回顾2024,展望2025
  • BGP边界网关协议(Border Gateway Protocol)路由聚合详解
  • Gradle buildSrc模块详解:集中管理构建逻辑的利器
  • PyTorch张量操作reshape view permute transpose
  • Uniapp开发总结
  • 【Linux】21.基础IO(3)
  • Soul App创始人张璐团队引领平台入选2024上海软件和信息技术服务业百强
  • YOLO目标检测3层
  • 存储过程优化实践:统一返回结构、参数 JSON 化与事务原子化
  • 开发环境搭建-3:配置 nodejs 开发环境 (fnm+ node + pnpm)
  • VMware虚拟机迁移到阿里云
  • 科技快讯 | 理想官宣:正式收费!WeChat 港币钱包拓宽商户网络;百川智能发布深度思考模型Baichuan-M1-preview