use*_*416 5 php apache .htaccess modx .htpasswd
我们正在尝试在ModX安装中保护几个不同的资源.当前.htaccess代码如下(不包括所有ModX内容)
AuthName "Dialog prompt"
AuthType Basic
AuthUserFile /var/www/vhosts/mywebsite.co.uk/.htpasswd
<FilesMatch ^index.php\?q=71$>
require valid-user
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
该练习的目的是保护以下资源:
我尝试过LocationsMatch,Locations,Files和Filesmatch的各种组合,但无法使其工作.
先感谢您
这就是完整的解决方案:
如果其他人需要知道,我创建了一个名为“passwordprotect”的代码片段,并将其放在页面顶部:[[passwordprotect]]。然后我输入以下代码(上述响应的改编):
<?php
if(isset($_SERVER['PHP_AUTH_USER']) && ($_SERVER['PHP_AUTH_USER']=='user') && ($_SERVER['PHP_AUTH_PW']=='password'))
{
echo 'You are successfully logged in.';
} else {
header('WWW-Authenticate: Basic realm="Protected area"');
header('HTTP/1.0 401 Unauthorized');
echo 'Text to send if user hits Cancel button';
exit;
}
Run Code Online (Sandbox Code Playgroud)
编辑:如果您发现这有时有效有时无效,这可能是因为使用 [[passwordprotect]],modx 会缓存该片段。我通过 [[!passwordprotect]] on Revolution 获得了更好的成功。我认为代码是 Evolution 上的 [!passwordprotect!]。感叹号仅表示不缓存该片段。希望对某人有帮助!
| 归档时间: |
|
| 查看次数: |
1012 次 |
| 最近记录: |