微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何访问Apache中的唯一ID?

我如何访问apache跟踪每个请求的unique_id? 我想跟踪它调用的任何PHP脚本,并logging每个请求。

我从http.conf文件删除对以下行的http.conf :

LoadModule unique_id_module libexec/apache2/mod_unique_id.so

我想在这个简单的PHP脚本中引用ID:

<?PHP print("Hello worldn"); print($_SERVER['UNIQUE_ID']); ?>

然而这个脚本只返回Hello World 。

如何以编程方式更改文件夹审核选项下的“适用于”字段(.NET)

Bash:如何检查是否只有一个root id,所有用户的uid是唯一的?

有没有一个API来远程读取Windows机器的审计configuration?

如何以编程方式设置Windows审计策略?

查看在Mac OS X中使用文件的过程

这可能吗? 我正在运行马科斯,如果这有什么区别。

$ _SERVER的var_dump如下所示:

array(29) { ["HTTP_HOST"]=> string(9) "localhost" ["HTTP_CONNECTION"]=> string(10) "keep-alive" ["HTTP_CACHE_CONTROL"]=> string(9) "max-age=0" ["HTTP_ACCEPT"]=> string(74) "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8" ["HTTP_USER_AGENT"]=> string(120) "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/33.0.1750.117 Safari/537.36" ["HTTP_ACCEPT_ENCODING"]=> string(17) "gzip,deflate,sdch" ["HTTP_ACCEPT_LANGUAGE"]=> string(14) "en-US,en;q=0.8" ["HTTP_COOKIE"]=> string(11) "undefined=0" ["PATH"]=> string(186) "/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/opt/local/lib/postgresql84/bin:/Applications/XAMPP/xamppfiles/bin" ["SERVER_SIGNATURE"]=> string(0) "" ["SERVER_SOFTWARE"]=> string(67) "Apache/2.2.24 (Unix) DAV/2 PHP/5.3.26 mod_ssl/2.2.24 OpenSSL/0.9.8y" ["SERVER_NAME"]=> string(9) "localhost" ["SERVER_ADDR"]=> string(3) "::1" ["SERVER_PORT"]=> string(2) "80" ["REMOTE_ADDR"]=> string(3) "::1" ["DOCUMENT_ROOT"]=> string(28) "/Library/WebServer/Documents" ["SERVER_ADMIN"]=> string(15) "[email protected]" ["SCRIPT_FILENAME"]=> string(35) "/Library/WebServer/Documents/id.PHP" ["REMOTE_PORT"]=> string(5) "49669" ["GATEWAY_INTERFACE"]=> string(7) "CGI/1.1" ["SERVER_PROTOCOL"]=> string(8) "HTTP/1.1" ["REQUEST_METHOD"]=> string(3) "GET" ["QUERY_STRING"]=> string(0) "" ["REQUEST_URI"]=> string(7) "/id.PHP" ["SCRIPT_NAME"]=> string(7) "/id.PHP" ["PHP_SELF"]=> string(7) "/id.PHP" ["REQUEST_TIME"]=> int(1397681759) ["argv"]=> array(0) { } ["argc"]=> int(0) }

我在同一领域的另一个问题可能指向手头的问题: https : //apple.stackexchange.com/questions/127801/where-are-the-apache-config-files-stored?noredirect=1#comment149749_127801

我如何从Linux查询Windowsregistry项?

审计特定的系统调用参数值

审计 – auditctl规则只监视目录(不是所有的子目录和文件等..)

在Linux中监视文件访问

使用WMI获取帐户安全策略

正如赏金评论中提到的那样,在OS X上有一些关于配置文件的问题。 例如,在OS X 10.7上,我成功启用了httpd.conf中的mod_unique_id,如果我通过首选项窗格重新启动 – Web共享一切按预期工作,但如果我通过apachectl命令重新启动一些奇怪的问题白羊座。

在OS X 10.9中,首选面板中没有Web共享,因此我的建议是坚持使用PHP的唯一ID生成器,例如这些功能可能有所帮助: http : //www.PHP.net/manual/en/function.uniqid.PHP和http://www.PHP.net/manual/en/function.openssl-random-pseudo-bytes.PHP

在我全新安装的OS X 10.9.2中,我启用了/etc/apache2/httpd.conf unique_id_module和PHP5_module,使用sudo apachectl restart启动web服务器,并且工作正常。

执行apachectl -M | sort时会得到列出的unique_id_module apachectl -M | sort并在PHP脚本中获得_SERVER["UNIQUE_ID"] 。

像脚本一样:

<?PHP echo $_SERVER["UNIQUE_ID"]; ?>

我有这样的输出

U08ZosCoAAMAAC9CATgAAAAA

用下面的文本创建一个PHPinfo.PHP脚本:

<?PHP PHPinfo(); ?>

之后 – 在浏览器中打开它,看看unique_id_module是否被列为“加载”。

正如它在模块文档中所说:

环境变量UNIQUE_ID被设置为每个请求的标识符

尝试使用getenv('UNIQUE_ID')而不是$_SERVER['UNIQUE_ID'] ,它不一样

我必须先执行/usr/sbin/httpd -k stop ,然后/usr/sbin/httpd -k start配置。 不确定为什么sudo apachectl restart看起来像重新启动,但它不是….

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐