如何在共享主机环境中对 .htaccess 文件执行语法检查?

如何在共享主机环境中对 .htaccess 文件执行语法检查?

我有一个构建脚本 (Perl),它会.htaccess在部署应用程序时修改文件。作为复查,我希望能够对创建的.htaccess文件执行某种语法检查。

我熟悉使用的想法apachectl -t,但是,我处于共享托管环境中,并且由于文件访问限制,我无法读取系统管理员指定的某些配置文件。Apachectl在这方面根本不起作用。

欢迎提出想法或建议。

答案1

没有原生的 .htaccess 验证器。如果存在第三方工具,我不确定是否会信任它。由于它是一个修改文件的脚本,因此您应该能够在脚本中编写验证代码。

您还可以为部署包含测试和验证过程,这将有助于减少错误。

答案2

答案3

最可靠的语法检查器是 Apache 本身。

如果您可以处理 500ms 的可能停机时间(向本地主机发出 http 请求所需的时间,非常近似),那么执行以下操作:

  1. 备份当前的 htaccess 文件
  2. 将当前的htaccess文件替换为要测试的文件
  3. 向服务器发出请求,例如“curl localhost”
  4. 如果 curl 不成功,请将备份放回

答案4

您可以简单地使用 Notepad++ 进行语法检查。

Silas Brill 非常慷慨地为 htaccess 文件创建了一种自定义语言并在这里分享。 http://notepad-plus.sourceforge.net/commun/userDefinedLang/Htaccess.xml

只需前往View-> User-Defined-Dialogue-> Import

然后重新启动 Notepad++。您应该能够在选项下看到新语言Language

相关内容