gpt4 book ai didi

apache - 区分生产和开发的单个 htaccess 文件

转载 作者:行者123 更新时间:2023-12-01 12:48:35 25 4
gpt4 key购买 nike

我目前为我的网站使用两个 .htaccess 文件:一个是开发版本,另一个是生产版本。区别在于用于 RedirectMatchRewriteRuleErrorDocument 指令的绝对路径和一些相对路径,并且在开发和生产之间有所不同。我正在使用 git hook 删除开发版本并重命名生产版本,但这仍然意味着我必须维护基本相同文件的两个版本。另外,我管理的其他网站也遇到了类似的问题,所以这意味着更多的工作。我宁愿在 .htaccess 文件中有一个文件和某种条件,它允许我说 if production -> use these, else -> use these。我可以在 .htaccess 文件中做这样的事情吗?

我发现了这个:

.htaccess between developemt, staging, and production

但这是为了重写规则,不会修复不同的 ErrorDocument 路径。

最佳答案

如果您的服务器运行的是 Apache 2.3 或更高版本,您可以使用 <if expr>像这样的指令:

<if "%{HTTP_HOST} == 'dev.example.com'">
# dev directives
</if>
<if "%{HTTP_HOST} == 'www.example.com'">
# prod directives
</if>

如果您使用 <if>,早期版本的 Apache 将抛出 500 服务器错误, 请务必在尝试此操作之前检查 Apache 版本。

关于apache - 区分生产和开发的单个 htaccess 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9594022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com