0

0

Apache怎么设置环境变量

(*-*)浩

(*-*)浩

发布时间:2019-11-29 14:45:28

|

4905人浏览过

|

来源于php中文网

原创

有两种环境变量会影响apache http server。

Apache怎么设置环境变量

首先,存在由底层操作系统控制的环境变量。这些是在服务器启动之前设置的。它们可以在配置文件的扩展中使用,也可以使用PassEnv指令传递给CGI脚本和SSI。         ( 推荐学习:Apache服务器 )

其次,Apache HTTP Server提供了一种机制,用于在命名变量中存储信息,这些变量也称为环境变量。此信息可用于控制各种操作,如日志记录或访问控制。变量还用作与外部程序(如CGI脚本)通信的机制。本文将讨论了操作和使用这些变量的不同方法。

尽管这些变量称为环境变量,但它们与底层操作系统控制的环境变量不同。相反,这些变量在内部Apache结构中存储和操作。

它们仅在提供给CGI脚本和服务器端包含脚本时才成为实际的操作系统环境变量。如果您希望操作服务器本身运行的操作系统环境,则必须使用操作系统shell提供的标准环境操作机制。

设置环境变量

基本环境操作

在Apache中设置环境变量的最基本方法是使用无条件的SetEnv指令。也可以使用PassEnv指令从启动服务器的shell环境传递变量。

有条件的每请求设置

为了提高灵活性,mod_setenvif提供的指令允许在每个请求的基础上设置环境变量,具体取决于特定请求的特征。

例如,只有在特定浏览器(用户代理)发出请求时,或者仅在找到特定的Referer [sic]标头时才能设置变量。通过mod_rewrite的RewriteRule可以获得更大的灵活性,它使用[E = ...]选项来设置环境变量。

与光AI
与光AI

一站式AI视频工作流创作平台

下载

唯一标识符最后,mod_unique_id将每个请求的环境变量UNIQUE_ID设置为一个值,该值在非常特定的条件下保证在“所有”请求中是唯一的。

标准CGI变量

除了在Apache配置中设置并从shell传递的所有环境变量之外,CGI脚本和SSI页面还提供了一组环境变量,其中包含有关CGI规范所要求的请求的元信息。

一些警告

使用环境操作指令无法覆盖或更改标准CGI变量。

当suexec用于启动CGI脚本时,在启动CGI脚本之前,环境将被清除为一组安全变量。安全变量列表在suexec.c中的编译时定义。

出于可移植性的原因,环境变量的名称可能只包含字母,数字和下划线字符。另外,第一个字符可能不是数字。传递给CGI脚本和SSI页面时,与此限制不匹配的字符将被下划线替换。

一个特殊情况是HTTP标头,它通过环境变量传递给CGI脚本等(见下文)。它们被转换为大写,只有短划线被替换为下划线;如果标头包含任何其他(无效)字符,则会以静默方式删除整个标头。

SetEnv指令在请求处理期间运行较晚,这意味着SetEnvIf和RewriteCond等指令不会看到使用它设置的变量。

当服务器通过内部子请求查找路径(例如查找DirectoryIndex或使用mod_autoindex生成目录列表)时,子请求中不会继承每个请求的环境变量。此外,由于mod_setenvif采取行动的API阶段,因此不会在子请求中单独评估SetEnvIf指令。

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

41

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

73

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

23

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

35

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

16

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

56

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

15

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

9

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

26

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
RunnerGo从入门到精通
RunnerGo从入门到精通

共22课时 | 1.7万人学习

尚学堂Mahout视频教程
尚学堂Mahout视频教程

共18课时 | 3.2万人学习

Linux优化视频教程
Linux优化视频教程

共14课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号