PHP的HTTP认证机制

简介:

PHP的HTTP认证机制因此该功能不适用于 CGI 版本。在 Apache 模块的 PHP 脚本中,可以用 header() 函数来向客户端浏览器发送Authentication Required信息,使其弹出一个用户名/密码输入窗口。当用户输入用户名和密码后,包含有 URL 的 PHP 脚本将会再次和预定义变量 PHP_AUTH_USER、PHP_AUTH_PW 和 AUTH_TYPE 一起被调用,这三个变量分别被设定为用户名,密码和认证类型。预定义变量保存在 $_SERVER 或者 $HTTP_SERVER_VARS 数组中。系统仅支持“基本的”认证

Java代码   收藏代码
  1. define('ADMIN_USERNAME''admin'); // Admin Username  
  2. define('ADMIN_PASSWORD''admin'); // Admin Password  
  3.   
  4. ///////////////// Password protect ////////////////////////////////////////////////////////////////  
  5. if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW']) ||$_SERVER['PHP_AUTH_USER'] != ADMIN_USERNAME || $_SERVER['PHP_AUTH_PW'] != ADMIN_PASSWORD){  
  6.     Header("WWW-Authenticate: Basic realm=\"admin Login\"");  
  7.     Header("HTTP/1.0 401 Unauthorized");  
  8.   
  9.     echo <<<EOB  
  10.                 <html><body>  
  11.                 <h1>Rejected!</h1>  
  12.                 <big>Wrong Username or Password!</big>  
  13.                 </body></html>  
  14. EOB;  
  15.     exit;  
  16. }  
相关文章
|
3天前
|
PHP Android开发
android通过http上传文件,服务器端用php写(原创)
android通过http上传文件,服务器端用php写(原创)
14 4
|
4天前
|
PHP 开发者
深入理解PHP的命名空间与自动加载机制
【5月更文挑战第8天】 在现代PHP开发中,命名空间和自动加载机制是两个核心概念,它们不仅提升了代码的可维护性,还增强了代码的复用性和模块化能力。本文将详细解析PHP命名空间的概念、实现及其在项目中的实际运用,同时探讨自动加载机制的原理与实现,以及如何结合命名空间实现高效的类和接口加载策略。通过实例演示和最佳实践分享,帮助开发者深刻理解并正确使用这两个高级特性,从而提升项目的质量和开发效率。
|
4天前
|
PHP
深入理解PHP的命名空间和自动加载机制
【5月更文挑战第8天】在PHP的世界中,命名空间和自动加载机制是两个非常重要的概念。命名空间解决了在大型项目中类名和方法名冲突的问题,而自动加载机制则可以在需要时动态加载类文件,从而提高代码执行效率。本文将详细解析这两个概念,并通过实例展示如何在PHP项目中使用它们。
|
7天前
|
PHP 开发者
深入理解PHP的命名空间与自动加载机制
【5月更文挑战第5天】 在现代PHP开发中,合理运用命名空间和自动加载机制是提升代码组织和维护性的关键。本文将详细探讨PHP命名空间的概念、实现以及如何与自动加载机制协同工作,旨在帮助开发者构建更加模块化和易于管理的PHP应用程序。通过对这些特性的深入剖析,读者将获得如何有效利用它们来优化项目结构的实用知识。
|
11天前
|
存储 缓存 自然语言处理
深入PHP内核:探索Opcode缓存机制
【5月更文挑战第1天】 在动态语言如PHP的执行过程中,每次脚本被请求时都需要经过一系列复杂的解析和编译步骤。为了优化这一过程并提高性能,PHP引入了Opcode缓存机制。本文将详细探讨Opcode的概念、作用以及它如何显著提升PHP应用的执行效率。我们将从缓存原理出发,分析几种常见的Opcode缓存工具,并通过实例说明如何在实际项目中实现和优化缓存策略。
|
12天前
|
PHP
深入理解PHP的命名空间和自动加载机制
【4月更文挑战第30天】在本文中,我们将探讨PHP中的两个重要概念——命名空间和自动加载。命名空间是PHP中用于解决代码重名问题的一种机制,而自动加载则是在运行时动态加载类或接口的一种方法。我们将详细解释这两个概念的工作原理,并通过示例代码展示如何使用它们来提高代码的可读性和可维护性。
|
12天前
|
PHP 开发者
深入解析PHP的命名空间与自动加载机制
【4月更文挑战第30天】 在现代PHP开发实践中,命名空间和自动加载机制是模块化和代码复用的关键。本文旨在提供一个全面的视角来理解这两个概念如何协同工作以优化项目结构。我们将探讨命名空间解决代码冲突的方式,以及自动加载机制如何智能地按需加载类,从而减少内存占用和提升性能。
|
12天前
|
PHP 开发者
深入理解PHP的命名空间与自动加载机制
【4月更文挑战第30天】在现代PHP开发实践中,命名空间和自动加载机制是两个核心概念,它们共同作用于代码的组织和优化加载过程。本文将详细探讨PHP命名空间的概念、实现及其与自动加载机制的协同工作方式,旨在为开发者提供清晰的指导,帮助他们编写更加模块化和易于维护的代码。通过理解命名空间的隔离特性和自动加载的细节,开发者能够更有效地管理大型项目中的类和接口,避免命名冲突,并提升应用性能。
|
12天前
|
PHP 开发者
深入理解PHP的命名空间与自动加载机制
【4月更文挑战第30天】在现代PHP开发中,命名空间和自动加载机制是提升代码复用性和维护性的重要特性。本文将探讨PHP命名空间的核心概念、实现原理以及如何通过自动加载机制有效地管理代码依赖关系。通过详细分析这两个特性的工作方式及其在实际项目中的应用场景,读者将获得更深层次的理解,以便在构建大型PHP应用时能够更加高效和灵活地使用它们。
|
12天前
|
PHP 开发者 容器
深入理解PHP的命名空间与自动加载机制
【4月更文挑战第30天】在PHP的编程实践中,命名空间和自动加载机制是两个强大的工具,它们能够有效地解决代码组织和类文件加载的问题。本文将探讨PHP命名空间的概念、实现以及如何结合自动加载机制来优化代码结构,提升项目的可维护性和扩展性。通过对这些技术的深入剖析,读者将获得对PHP高级特性的更深入理解,并在实际开发中应用这些知识以提升开发效率。