问题标签 [getenv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
environment-variables - Why the contents of environ in the /proc file system differs from what extern environ pointed to?
getenv() in my C++ apache/cgi gives me weird things, then I checked the environ inside /proc/${PID_OF_THE_RUNNING_PROCESS}, they did not match, which I think they should, I am wondering what was wrong with /proc or it was getenv()?
Code of PID_OF_THE_RUNNING_PROCESS
Console log of PID_OF_THE_RUNNING_PROCESS
php - 当我使用 getenv(REMOTE_ADDR) 时,Cloudflare 给了我错误的 IP
我有一个测试 php 代码。它本质上是抓取某人的 IP 并将其通过电子邮件发送到一个地址。我计划稍后将其存储在数据库中,但出于测试目的,我将其作为电子邮件发送给我。
我的问题是,我启用了 cloudflare,所以当我使用getenv(REMOTE_ADDR)
它时,它会给我 cloudflare 的 IP,而不是实际的访问者 IP。有没有办法获取访问者的IP?
c - 在 C 中包装 getenv() 和类似方法而没有泄漏或竞争条件的方法
不应存储 getenv 返回的指针,因为将来对 getenv 的调用可能会更改它(或对 setenv 的调用等)。我正在尝试围绕 getenv 编写一个方便的包装器,如果找不到环境变量,它会返回一个默认值。我宁愿不泄漏内存。
我想到的选项:
让包装函数复制 getenv 返回的字符串,使用 malloc 和 strcpy 或 strdup (这是在符合 POSIX 的系统上)。这有效并允许错误处理,但需要调用者记住释放指针。这为内存泄漏创造了空间。
不要费心尝试缓存该值,而是让每个调用者都这样做。这使得离开竞争条件变得容易。使用全局变量来存储 getenv 返回的字符串的副本。这将避免调用者释放内存的需要,但除非我添加某种锁定/原子更新,否则会像单独的 getenv 那样冒竞争条件的风险。
在函数中使用静态变量来缓存值。这可能是最好的选择,因为它会为后续调用重用内存,但可能会导致竞争条件。
我有理由确定我错过了一些东西。
c - envz_get 和 getenv 是否引用相同的环境变量池?
如果后者通过可选getenv()
参数传递给?envz_get()
envp
int main (int argc, char *argv[], char *envp[])
换句话说,可选envp
参数是否int main (int argc, char *argv[], char *envp[])
引用了相同的环境变量池getenv()
?
c - getenv 返回受污染的字符串内容
Coverity 声称 getenv 正在返回一个受污染的字符串,我已经用尽了所有关于返回值检查的想法。我查看了与我类似的其他问题,但他们的解决方案都不适合我。
我试过检查返回是否为 NULL,我试过 strdup、strncpy、memcpy,但似乎没有什么能让受污染的字符串消失。
这是没有无效检查的原始代码:
关于如何让 Coverity 相信它不再受到污染的任何想法?
maven - 通过 maven 命令运行时如何修复 system.getenv 错误?
我正在通过 maven 在 eclipse 上运行一个项目,并且我已经在我的系统上设置了一个环境变量,以便我的项目能够正常工作。
这是一个示例代码:
但是当我运行mvn test
时,我得到了 java nullPointerException
,因为它在运行测试时无法找到该config.properties
文件。
请检查下图以获取 Maven 错误日志
我已经尝试了以下链接的解决方案,但它对我不起作用:
我的pom.xml
文件如下:
继续上面的pom
继续上面的pom
我想通过将我的配置文件作为环境变量传递来通过 maven 运行上述代码。
php - PHP GetEnV 在同一网络上返回相同的用户名
我试图运行下面显示的 getenv 用户名代码,它在我的 PC 上显示正确的用户名,但是当我通过我的 ip 从同一网络上的其他 PC 访问相同的用户名时,他也得到了我的用户名。当他访问我的电脑 URL 时,应该显示他在他电脑上的用户名
谢谢
用户名期望 pf windows 登录用户在我的机器上它是正确的,但在网络上的所有机器上,如果通过我的 ip 访问,则在他们的 PC 上显示我的用户名
谢谢
php - 为 php 存储的 .env 文件在哪里
我试图找出 php 使用 getenv/putenv 方法检索和存储值的环境文件在哪里。
我的印象是它存储在 .env 文件中。我可能错了。随时纠正我。
我认为它与网站位于同一目录中(比如说 www 或 web),但不是。
linux - 为什么 getenv MT 在手册页中是安全的?
在 POSIX.1-2017 中:getenv() 函数不必是线程安全的。
但是,在手册页中,genenv 是 MT-Safe env。
然而,
getenv() 的实现不需要是可重入的。getenv() 的返回值指向的字符串可能是静态分配的,并且可以通过后续调用 getenv()、putenv(3)、setenv(3) 或 unsetenv(3) 来修改。
那么,到底是什么MT-safe env
??
谢谢!