- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我位于透明代理后面,该代理始终添加 HTTP_X_FORWARDED_FOR header 。
当我使用 PHP 转储 header 时, header 丢失了。但Python可以工作..哈哈
Python:
remote_addr = os.environ.get('HTTP_X_FORWARDED_FOR', os.environ.get('REMOTE_ADDR', ''))
PHP:
print_r($_SERVER['HTTP_X_FORWARDED_FOR']);
print_r($_SERVER['REMOTE_ADDR']);
---- 编辑:添加了有关以下配置的更多信息 ------
PHP 版本:5.2.16
PHP配置命令:
'./configure' '--enable-bcmath' '--enable-calendar' '--enable-exif' '--enable-fastcgi' '--enable-ftp' '--enable -gd-native-ttf' '--enable-libxml' '--enable-magic-quotes' '--enable-mbstring' '--enable-pdo=共享' '--enable-soap' '--enable -sockets''--enable-sqlite-utf8''--enable-wddx'''--enable-zip''--prefix=/usr''--with-curl=/opt/curlssl/''-- with-freetype-dir=/usr' '--with-gd' '--with-gettext' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/opt/openssl' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-libexpat-dir=/usr' '--with-libxml-dir=/opt/xml2' '--with- libxml-dir=/opt/xml2/' '--with-mcrypt=/opt/libmcrypt/' '--with-mhash=/opt/mhash/' '--with-mime-magic' '--with- mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-mysqli=/usr/bin/mysql_config' '--with-openssl=/opt/openssl ' '--with-openssl-dir=/opt/openssl' '--with-pcre-regex=/opt/pcre' '--with-pdo-mysql=共享' '--with-pdo-sqlite=共享' '--with-png-dir=/usr' '--with-pspell' '--with-sqlite=shared' '--with-tidy=/opt/tidy/' '--with-ttf' ' --with-xmlrpc' '--with-xpm-dir=/usr' '--with-xsl=/opt/xslt/' '--with-zlib' '--with-zlib-dir=/usr'
PHP 服务器 API:CGI/FastCGI
Python 运行方式:CGI
Hostgator does not support mod_python but I'm on a dedicated box, so I can modify the configs if I only knew how.. :)
最佳答案
您正在使用 FastCGI。 PHP 对此并不满意,尽管它正在取得进展。 PHP 5.3 带来了 php-fpm,5.4 将带来 FastCGI 的 HTTP header 。请参阅 apache_request_headers 的变更日志或getAllHeaders()
。
虽然没有纯 PHP 解决方案,但上一个链接的第一个注释包含一个解决方法:使用 mod_rewrite 设置环境变量。
# Apache config for mod_rewrite
# from callum85 at notspam dot msn dot com 19-Apr-2007 06:07
RewriteEngine on
RewriteRule .* - [E=HTTP_X_FORWARDED_FOR:%{HTTP_X_FORWARDED_FOR}]
关于php - PHP 中缺少 $_SERVER header ,但 Python 中存在 $_SERVER header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7141566/
这个问题在这里已经有了答案: 关闭 9 年前。 Possible Duplicate: HTTP_HOST vs. SERVER_NAME $_SERVER['HTTP_HOST'] 和 $_SERV
我有一个反馈表,它将包含几个用户输入的字段以及一些由 PHP 函数生成的字段,例如“user-agent”和“referer”。 我的问题是这些字符串在输入之前是否应该进行清理?我知道可以很容易地更改
我打印了 $_SERVER,发现 $_SERVER['REDIRECT_URL'] 与 $_SERVER['REQUEST_URI'] 的值相同。两者有什么区别? 最佳答案 REQUEST_URI 是
有什么区别: $_SERVER['SCRIPT_NAME'] 和 $_SERVER['PHP_SELF'] 谢谢。 最佳答案 它们应该包含相同的信息。但是,从历史和技术上来说,两者是有区别的。 SCR
我带着一个简单的问题(或相关问题)回来了。 问题很简单,但我还没有收到答案。我问过很多有不同 PHP 经验的人。但我得到的回应是:“我不知道。我从来没有想过这个。”使用谷歌我找不到任何关于此的文章。希
$_SERVER['PATH_INFO'] 和 $_SERVER['ORIG_PATH_INFO'] 有什么区别?我该如何使用它们? 当我运行 print_r($_SERVER) 时,PATH_INF
我有一个 php 框架,我使用 $_SERVER['SCRIPT_NAME'] 来优化可移植性。这样我就不需要再手动配置路径了。 $this->base_url = str_replace('inde
我做了很多搜索,还阅读了 PHP $_SERVER docs .我是否有权在我的 PHP 脚本中使用哪个用于在整个网站中使用的简单链接定义? $_SERVER['SERVER_NAME'] 基于您的
使用 $_SERVER['REQUEST_URI'] 或 $_SERVER['PHP_SELF'] 作为表单中的操作或作为 href链接? 如果是这样,可以采取哪些措施来降低风险? 最佳答案 您在 w
我必须从 server script 获取远程 url 主机名,以下哪个更可靠: gethostbyaddr($_SERVER['REMOTE_ADDR']) 或 $_SERVER['REMOTE_H
在开始之前,我想指出我浏览了 Stack Overflow 并发现了其他类似的问题 - PHP_AUTH_USER not set?和 HTTP Auth via PHP - PHP_AUTH_USE
我在 php 脚本中使用 $_SERVER['HTTP_HOST'] 和 $_SERVER['REQUEST_URI'] 来获取页面的 url,但 envato 主题检查插件显示警告。 警告:在文件
我位于透明代理后面,该代理始终添加 HTTP_X_FORWARDED_FOR header 。 当我使用 PHP 转储 header 时, header 丢失了。但Python可以工作..哈哈 Pyt
这是对 this question 的扩展我们了解到可以使用 SetEnv 设置 $_SERVER 变量。 下一个问题是:有没有一种方法可以像这样使用 SetEnv: /var/www/www.exa
是否可以使用 .htaccess 或其他 apache 功能在 php 数组 $_SERVER 中设置自定义服务器值。 例如 if($_SERVER['is_special']) { echo
什么相当于 codeigniter 中的 $_SERVER ? 最佳答案 $this->input->server() 更多信息请引用用户指南:Input 关于Codeigniter 和 $_SERV
这是指向当前文件执行的目录吗? 最佳答案 不,它指向您的网络服务器的根目录 - 您网站的最顶层文件夹。 如果你想要当前文件的目录,使用: 目录名(__FILE__); 关于php - $_SERVER
我真的很想使用以下问题的答案:How can I force users to access my page over HTTPS instead of HTTP? 但我一直认为全局 $_SERVER
我需要知道当我处理 $_SERVER 变量时我是否可以安全地使用普通字符串或者我必须使用 mb_* 字符串。 (UTF-8) 例如 $_SERVER['HTTP_HOST'] 可以包含多字节字符? 如
我遇到过以下三行代码: $_SERVER; $_ENV; $_REQUEST; 对我来说,这三行代码似乎什么也没做。它们不会导致任何错误。 我知道这三个全局变量是什么,就是不知道这三行代码是干什么的。
我是一名优秀的程序员,十分优秀!