php - 使用htaccess根据域名进行限制

标签 php apache .htaccess .htpasswd

我有一个应用程序,它接受多个 URL,并在应用程序本身中重定向它们(在 PHP 中)

因此,www.example.com 是主域,www.example2014.com 是次要域,应用程序在内部将其处理为 www.example.com/2014/

我们添加了一个新域,现在需要设置应用程序来处理它 - 添加页面和内容等。

如何使用用户名和密码限制 htaccess 文件中的 www.example2014.com,直到应用程序的新子目录可供公众使用?

最佳答案

您可以将 SetEnvIf 与 mod_authz 中的 Satisfy Any 一起使用:

SetEnvIfNoCase HOST ^www\.example2014\.com(:80)?$ PROTECTED_HOST

AuthUserFile /var/www/htpasswd
AuthName "Password Protected"
AuthType Basic
Order Deny,Allow
Satisfy any
Deny from all
Require valid-user
Allow from env=!PROTECTED_HOST

如果请求的主机是 www.example2014.com,则这会设置环境变量“PROTECTED_HOST”,并且如果未设置“PROTECTED_HOST”,则身份验证设置允许所有请求绕过密码保护

关于php - 使用htaccess根据域名进行限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21439531/

相关文章:

php - Mysql查询使用WHEN和AND更新具有多个条件的多列

php - 如何在 PHP 中绘制有向图?

java - 如何在运行时从 Java 代码中获取 server.xml 中配置的 HTTP 和 HTTPS 端口号

php - 如何使用 AJAX 和 PHP 在在线服务器中启用 CORS 以获取用于另一个 BigCartel 站点的字体

php - 如何在 php 中创建动态 URL?

PHP preg_split : Split string by other strings

php - mysql 和 php fetch_assoc() 不工作

php - 重建 VM 后 apache2 中的 Symfony2 URL 404

apache - 使用 mod_proxy_ajp 连接 Apache 和 Tomcat 有效,但 JDBC 然后失败

.htaccess - 重写不适用于 ssl