我有两个运行 Apache 的 CentOS 机器。一个是我的开发环境,另一个是我的生产环境。我正在考虑使用 Gulp 通过 Git 将开发服务器推送到生产服务器,但根据环境的不同,我的 .htaccess 文件中的配置要求也不同。
我想要做的是拥有某种类型的中央配置文件,允许我更新这些配置,然后当我推送到开发时,它会将.htaccess 文件的某些方面设置为开发设置,当推送到生产时,它会使用我的生产设置。
(我猜另一个选择是拥有一个 dev.htaccess 和 prod.htaccess,然后让 Gulp 根据它推送到的环境将相应的文件重命名为 .htaccess。但我想避免维护多个 .htaccess 文件。)
答案1
恕我直言,您应该将您的服务器配置与您的代码分开。
配置管理工具应该可以轻松地让您维护特定环境的正确配置,并且您的代码应该能够在任何正确配置的环境中运行。
因此,不要.htaccess
在部署中包含您的文件,最好:.htaccess
根本不要使用文件!
引自.htaccess 手册文件:
你应该完全避免使用
.htaccess
文件 如果你有权访问 httpd 主服务器配置文件。使用.htaccess
文件会减慢你的 Apache http 服务器速度. 任何可以包含在.htaccess
文件中的指令最好都设置在Directory
在主 Apache 配置文件中阻止,因为它具有相同的效果,但性能更好。