存档

文章标签 ‘ip’

nginx反向代理获取用户真实ip

2017年3月5日 1 条评论

nginx做反向代理时,默认的配置后端获取到的ip都是来自于nginx,那么如何转发用户的真实IP到后端程序呢?
当前端使用nginx代理,后端使用php-fpm时,如果还是使用$_SERVER['REMOTE_ADDR'],那么php程序获取到的是nginx的ip地址,而不是用户的真实ip。

在nginx的配置文件中加入下面三个指令,这样后端php就可以使用$_SERVER['HTTP_X_REAL_IP']获取到访客的ip。

如果你想使用$_SERVER['REMOTE_ADDR'],不想修改代码,那么可以通过修改REMOTE_ADDR的值来实现。

经过多层代理后 $http_x_forwared_for 会含有多个ip,其中第一个ip是客户端的ip,REMOTE_ADDR只能是客户端的ip,所以可以用正则提取 $http_x_forwarded_for的第一个ip给REMOTE_ADDR:

分类: nginx 标签:

几个常见的问题

2013年5月15日 没有评论

ping: unknown host

ping www.tianqiyubao.cc

ping: unknown host www.tianqiyubao.cc

curl www.tianqiyubao.cc
curl: (6) Couldn't resolve host www.'tianqiyubao.cc'

开始以为是dns缓存问题,找了一圈没找到如何更新dns缓存

只能重启network,重启后问题依旧。

本地机器已经能识别生效的A记录,服务器还是不行。

vi /etc/resolv.conf

增加一行dns

nameserver 8.8.8.8

再ping就可以了。

lingx如何开机启动服务

把启动命令放到/etc/rc.d/rc.local文件里这样就可以每次启动的时候自动启动服务了
(suse没有rc.local。SUSE是可以这么定义自己的脚本的,如果希望在切换运行级之前和之后运行自己的脚本,那么可以分别创建:
/etc/init.d/before.local
/etc/init.d/after.local)

echo /etc/init.d/vsftpd start >> /etc/rc.d/rc.local

添加这条命令会,会在每次开机之后自动启动vsftp

wordpress如何禁止发布重复标题

在post.php中搜索

if ( $post_name_check || in_array( $slug, $feeds ) || apply_filters( 'wp_unique_post_slug_is_bad_flat_slug', false, $slug, $post_type ) ) {

大括号后面添加return 0;

 

如何查看内网主机的外网ip

分类: linux 标签: , , ,