VPS侦探论坛

 找回密码
 注册
查看: 8946|回复: 12

防盜鏈一直無法成功

[复制链接]
发表于 2012-1-15 14:47:24 | 显示全部楼层 |阅读模式

老大,我爬了很多防盜鏈文章也試了卻沒效果
我把下面代碼貼到 /usr/local/nginx/conf/vhost/player.XXX.org.conf

以下是我貼完之後的結果  可是我直接訪問 player.XXX.org/player.swf  確沒有防盜鏈
server
        {
                listen       80;
                server_name player.xxxxx.org;
                index index.html index.htm index.php default.html default.htm default.php;
                root  /home/wwwroot/player;

                include none.conf;
                location ~ .*\.(php|php5)?$
                        {
                                fastcgi_pass  unix:/tmp/php-cgi.sock;
                                fastcgi_index index.php;
                                include fcgi.conf;
                        }

                location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
                        {
                                expires      30d;
                        }

                location ~ .*\.(js|css)?$
                        {
                                expires      12h;
                        }


location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
                        {
                                valid_referers none blocked *.vpser.net;
#故意不修改直接訪問測試

                                if ($invalid_referer) {
                                rewrite ^/ http://linode.vpser.net/404.jp;
                                #return 404;
                                }
}
                access_log off;
        }


大大求救了!!!

[ 本帖最后由 larrylin 于 2012-1-15 15:03 编辑 ]
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2012-1-15 19:01:20 | 显示全部楼层


重启nginx生效
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
 楼主| 发表于 2012-1-15 19:02:19 | 显示全部楼层

有重啟過了還是無法生效耶怎麼辦?
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2012-1-15 19:03:49 | 显示全部楼层



我lnmp重啟會出現這個錯誤


Starting php_fpm Failed loading /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so:  /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so: cannot open shared object file: No such file or directory
Failed loading /usr/local/ioncube/ioncube_loader_lin_5.3.so:  /usr/local/ioncube/ioncube_loader_lin_5.3.so: undefined symbol: gc_remove_zval_from_buffer
done


那要怎麼修正呢  大大
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2012-1-15 20:10:53 | 显示全部楼层

回复 4# 的帖子


没有错误信息就不好说了
php是那个版本?

军哥运维代购:http://shop63846532.taobao.com/

 楼主| 发表于 2012-1-15 20:17:23 | 显示全部楼层

錯誤訊息要去哪提取給你看呢?

防盜鏈跟這個錯誤有關西嗎?
发表于 2012-1-15 20:40:17 | 显示全部楼层

前面的报错信息与防盗链没任何关系

貌似直接访问是不受nginx反盗链限制的。
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2012-1-15 20:52:04 | 显示全部楼层

Stoping LNMP...
Nginx program is stop
Shutting down php_fpm . done
PHP-FPM program is stop
Shutting down MySQL. SUCCESS!
MySQL program is stop
Starting LNMP...
Nginx start successfully!
Starting php_fpm Failed loading /usr/local/ioncube/ioncube_loader_lin_5.3.so:  /usr/local/ioncube/ioncube_loader_lin_5.3.so: undefined symbol: gc_remove_zval_from_buffer
done
PHP-FPM start successfully!
Starting MySQL. SUCCESS!
MySQL start successfully!


重起就會出現 php_fpm  .........

那段的錯是要怎麼修正??
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2012-1-16 09:14:50 | 显示全部楼层

回复 8# 的帖子



你可能是php 5.2.17,但是装了php 5.3的ioncube loader

军哥运维代购:http://shop63846532.taobao.com/

 楼主| 发表于 2012-1-16 19:46:22 | 显示全部楼层



那我現在要怎麼處理?

那個防盜鍊不能防盜php嗎?

不想給別的網域用iframe連我的php
我有什麼辦法可以防盜呢?
 楼主| 发表于 2012-1-31 15:03:58 | 显示全部楼层

那個防盜鍊不能防盜php嗎?

不想給別的網域用iframe連我的php
我有什麼辦法可以防盜呢?
发表于 2012-1-31 17:07:29 | 显示全部楼层

难道没人告诉你

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

不能有两段这个代码出现吗,你的防盗链规则要放在已有的上面这段代码里面,才能有效,不能出现两段一样的 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2012-6-6 13:17:11 | 显示全部楼层
1.确定要修改的文件
如果你安装lnmp后,没有新建站点,而是使用默认站点,那你需要修改的文件是 /usr/local/nginx/conf/nginx.conf

如果你新建了站点,那么要修改的文件是 /usr/local/nginx/conf/vhost/ 这个文件夹下面的相应文件,通常应该是 你的域名.conf

2.根据你的情况,下载或者打开相应的.conf文件,注意先备份
找到下面内容
  1. location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  2.                         {
  3.                                 expires      30d;
  4.                         }
复制代码
把它修改为类似下面的样子
  1.                 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  2.                         {
  3.                                 valid_referers none blocked *.vpser.com vpser.com;
  4.                                 if ($invalid_referer) {
  5.                                         rewrite ^/ http://othervpser.com/404.jpg;
  6.                                         #return 404;
  7.                                         }
  8.                                 expires      30d;
  9.                         }
复制代码

特别说明:
以上都不是真正防盗链,但是在其他网站调用的本站图片都已经作了防护了,如果用户通过浏览器直接输入图片地址或下载地址,仍然会显示图片,仍可下载文件,因为 valid_referers 里多了“none blocked”。
最后说下ngingx下如何彻底地实现真正意义上的防盗链,那就是把“none blocked”去掉,这样浏览器直接输入就不会显示图片了(别忘了改成自己的域名)


你要修改的地方
gif|jpg|jpeg|....,这些是你想要屏蔽的文件类型,可以根据情况修改

vpser.com *.vpser.com,修改为你网站的域名,或者是你允许显示你网站图片的其他网站域名,注意中间用空格分开,而不是逗号


http://othervpser.com/404.jpg 这个图片显示给盗链者看到的图片,注意不要放到vpser.com上,因为防盗链的作用,那样对方是看不到的,可以上传到一些支持外联的网络相册上。


最后别忘了测试重启nginx。
测试nginx.conf正确性:
/usr/local/nginx/sbin/nginx -t
如果正确应该显示如下信息:
the configuration file /opt/nginx/conf/nginx.conf syntax is ok
configuration file /opt/nginx/conf/nginx.conf test is successful
平滑重启nginx
/etc/init.d/nginx reload

[ 本帖最后由 hong0 于 2012-6-6 13:30 编辑 ]
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2024-11-17 13:35 , Processed in 0.029973 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表