免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1707 | 回复: 1
打印 上一主题 下一主题

[C] 关于FastCGI环境变量的一个疑问 [复制链接]

论坛徽章:
2
IT运维版块每日发帖之星
日期:2016-07-27 06:20:0015-16赛季CBA联赛之福建
日期:2017-03-23 18:32:41
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-06-27 10:51 |只看该作者 |倒序浏览
因为FastCGI的程序是用C写的 姑且在C板面发帖了。
问题是这样:
在FastCGI提供的demo里面,有个是遍历环境变量的。
首先extern char **environ;
然后变量该指针
for ( ; *envp != NULL; envp++) {
                printf("%s\n", *envp);
}

接着 char **initialEnv = environ;
遍历该指针
for ( ; *initialEnv!= NULL; initialEnv++) {
                printf("%s\n", *initialEnv);
}


疑问来了,为啥两个遍历得到的环境变量的内容不一致呢?

论坛徽章:
2
IT运维版块每日发帖之星
日期:2016-07-27 06:20:0015-16赛季CBA联赛之福建
日期:2017-03-23 18:32:41
2 [报告]
发表于 2016-06-27 11:14 |只看该作者
刚刚测了下
直接遍历extern char **environ;这个指针获取到的内容是在nginx.conf配置里面 配置的fastcgi_params 配置文件里面的内容
而直接遍历char **initialEnv = environ; 获取到的内容是该可执行文件所在的环境的内容。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP