用PHP代码给Apache配置文件瘦身

Posted 编程之夜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用PHP代码给Apache配置文件瘦身相关的知识,希望对你有一定的参考价值。

默认的Apache2.4.33配置文件httpd.conf,注释占据了大量空间,对于老司机谁还在注释堆里找关键代码也很酸爽,先删干净再按需加回来吧。编辑器应该也有这个功能,可惜我一直没用过,那就用php处理,也很方便。



在文本编辑器notepad++设置,视图->显示所有符号,绿色标注注释区。这样可以清楚看见CR(回车\r)、 LF(换行\n)字符、每一个字符都显示出来,漫山遍野的黑色  CRLF 回车换行大军。


怎样挑选出默认配置未注释的代码呢?

很容易发现注释都是以#开头,并且没有单独的#混在其中。对于每一行,如果有#号说明是注释跳过,如果没有则记录下内容。

$filePath = './file/httpd_en.conf';

$content= '';
$reader = fopen($filePath, "r");

while(!feof($reader)){//判断不是文件结尾
   $row = fgets($reader);//读取每一行,指针移动到下一行
   if(!strstr($row,'#')){//大小写敏感
       $content .= $row;
   }else{
       continue;
   }
}//while
fclose($reader);


这样出现一个问题,只有CRLF的也单独占据一行,显得不够紧凑。

所以加入一个判断是否只有"CRLF",如果是同样跳过。

while(!feof($reader)){//判断不是文件结尾
   $row = fgets($reader);//读取每一行,指针移动到下一行
   if(!strstr($row,'#')){//大小写敏感
       if($row =="\r\n"){//只有回车换行
           continue;
       }
       $content .= $row;
   }else{
       continue;
   }
}//while


读取处理的部分完成,再加上文件生成

$writer = fopen("httpd.conf", "wb");
fwrite($writer, $content);
fclose($writer);


php.ini也可以。实际上做这个,是在探索PHP自动化配置Apache、PHP。可能涉及先有鸡还是先有蛋的问题,手工优化配置后,实际上也只需要修改一下目录就可以跑WAMP了。有兴趣的学友可以在下面的链接中深入了解。


- END -



相关阅读:





以上是关于用PHP代码给Apache配置文件瘦身的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot部署JAR文件瘦身优化经验分享

PHP必用代码片段

配置apache以运行php脚本代码

微信小程序瘦身器-协助微信小程序瘦身

用什么方法给图片文件瘦身变小

我安装了apache,mysql,phpadmin,smarty还有php5.2.5配置也配好了,可我还是不知道用啥编写php文件。。。