我正在尝试在我的服务器上设置.htaccess / .htpasswd对,但是每个环境(dev,staging,production)都有不同的路径来存放文件。
我找到了一种基于主机检查环境的方法,即:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^stage\.domain\.com$
RewriteRule (.*) $1 [E=PYRO_ENV:stage]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule (.*) $1 [E=PYRO_ENV:production]
但现在我希望能够使用条件来根据环境设置AuthUserFile的路径。
所以我想我的问题是:
提前感谢您的帮助!
答案 0 :(得分:0)
我来到这里问了同样的问题,现在我找到了解决方案,我回来分享它。
根据Apache's documentation,AuthUserFile 参数将文件路径作为参数。这个
<块引用>(...)file-path 是用户文件的路径。如果不是绝对的话 被视为相对于 ServerRoot。
因此,使用文件的相对路径的简单方法似乎利用了这种行为,这在所有环境中都是一样的。
编辑:进一步搜索揭示了解决此问题的两种不同方法:使用 simlynks 或 conditionals