日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

伪静态及图片放盗链

發布時間:2023/12/18 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 伪静态及图片放盗链 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

偽靜態及圖片放盜鏈

一、偽靜態:

從形式上看是一個靜態地址,實際上還是訪問的動態地址,

比如:訪問:http://www.abc.com/news-sport-id123.html

實際上是:http://www.abc.com/news.php?type=sprot&id=123;

作用:主要是利于seo,靜態頁面的方式,比較容易被搜索引擎給搜集。

?Localhost/6.php???? 輸入localhost/6.html 同樣能輸出跟6.php同樣的內容???

?

1、實現原理:

使用apac he的rewrite機制。

rewrite機制:就是一個url的重寫機制,

2、如何開啟重寫模塊,

在httpd.conf文件中進行開啟。

?

3、配置方式:

? 1)直接在配置虛擬主機處進行配置 ,每次修改apache的文件都需要重啟apache

???<VirtualHost *:80>

? #主機名

??ServerName? localhost

?? #開啟重寫引擎

?? RewriteEngine on

?? #寫重寫規則

?? RewriteRule /index.html?/6.php [L]

?? #文件的根目錄路徑

??DocumentRoot?"E:/server/apache/htdocs"

<Directory? "E:/server/apache/htdocs">

?? #結構樣式

? #打開默認的首頁

DirectoryIndex? index.php?index.html

#打開默認索引列表??

???Options? Indexes? FollowSymLinks????

?? #權限

? #權限控制?? 先拒絕后允許

??Order Deny,Allow??

?#允許所有用戶進行訪問

?? AllowOverride All

???Allow from? All???

?</Directory>

</VirtualHost>

?

? 2)分布式配置 具體的.htaccess文件中的配置: 在網站的根目錄下創建一個文件,文件名為.htaccess

?<ifModule rewrite_module>(<IfModulemod_rewrite.c>)

?? #打開重寫引擎

??RewriteEngin on

??#RewriteCond 判斷條件(服務器變量)條件表達式? [條件標志]

??#RewriteRule? 規則url?? 目標url? [規則的標志]

?</ifModule>

?

???????? 示例

<IfModule mod_rewrite.c>

??? RewriteEngine On

??? RewriteCond%{REQUEST_FILENAME} !-d

??? RewriteCond%{REQUEST_FILENAME} !-f

??? RewriteRule ^(.*)$week.php/$1 [L]

</IfModule>

4、具體的語法:

RewriteEngine on? #開啟重寫引擎

RewriteCond?重寫條件,要滿足一定的條件才重寫。

?

CI框架中的重寫規則

第一步:在虛擬主機開啟? AllowOverrideAll

第二步: //配置偽靜態時在CI框架的配置文件 config中修改 URL協議為

$config['uri_protocol']???? = 'PATH_INFO';

?

RewriteCond條件的語法:

RewriteCond?? 判斷依據?? 條件表達式 [條件標志]

?

(1)判斷依據:可以使用服務器變量:

RewriteCond%{REQUEST_FILENAME} !-d

RewriteCond%{REQUEST_FILENAME} !-f

比如:%{REQUEST_FILENAME}?表示請求的文件名稱

比如:%{HTTP_REFERER}:表示請求的來源。

(2)條件表達式:可以是一些標志,或者字符串

?

比如:

-d?? 表示是一個目錄

-f???表示是一個文件

?

RewriteCond%{REQUEST_FILENAME} !-d? //如果請求的路徑不是一個目錄

RewriteCond%{REQUEST_FILENAME} !-f? //如果請求的路徑不是一個文件

(3)[條件標志]

[NC]表示不區分大小寫

[OR],在默認情況下多個條件(RewriteCond)之間是并且的關系。如果我們使用或關系則后臺添加[OR]標志。

?

?

?

RewriteRule? 語法規則

RewriteRule?? 規則的url可以使用正則)? 目標url? [規則標志]

規則標志

[F] 表示表示禁止重寫

[NC] 表示:不區分大小寫

?

如何選擇真靜態和偽靜態?

網站實時性要求高,不要使用靜態化(真靜態,偽靜態均不適宜)。

如果網站訪問量較小,沒有必要使用靜態化技術

如果數據項目不多,但是訪問頻率極大,建議使用真靜態,比如新浪新聞頻道。

如果數據項目海量,使用真靜態會生成海量的html靜態頁面,建議使用偽靜態。

在一個大型網站中,靜態化技術是綜合使用的,這個需要大家經驗的積累,多做項目。(sina網站:新聞頻道,真靜態,基金頻道:偽靜態,管理后臺:不使用靜態技術)

?

?

防盜鏈的方法以及使用

引子:明明引用了一個正確的圖片地址,但顯示出來的卻是一個紅叉或寫有“此圖片僅限于***網站用戶交流溝通使用”之類的“假圖片”。用嗅探軟件找到了多媒體資源的真實地址用下載軟件仍然不能下載。下載一些資源時總是出錯,如果確認地址沒錯的話,大多數情況都是遇上防盜鏈系統了。常見的防盜鏈系統,一般使用在圖片、音視頻、軟件等相關的資源上。

一、什么是防盜鏈系統

????????在確保地址正確的情況下,不能下載相應的資源,均是受到防盜鏈系統的影響,那么究竟什么是防盜鏈系統呢?防盜鏈自然就是防范盜鏈,所以這里先說一下什么是盜鏈。
????????盜鏈是指在自己的頁面上展示一些并不在自己服務器上的內容。通常的做法是通過技術手段獲得它人服務器上的資源地址,繞過別人的資源展示頁面,直接在自己的頁面上向最終用戶提供此內容。比較常見的是一些小站盜用大站的資源(圖片、音樂、視頻、軟件等),對于這些小站來說,通過盜鏈的方法可以減輕自己服務器的負擔,因為真實的空間和流量均是來自別人的服務器。
????????防盜鏈系統就是防范盜鏈的系統,防止別人通過一些技術手段繞過本站的資源展示頁面,盜用本站的資源,讓繞開本站資源展示頁面的資源鏈接失效。實施防盜鏈系統后,因為屏蔽了那些盜鏈的間接資源請求,從而可以大大減輕服務器及帶寬的壓力,也正如此,越來越多的站點都開始實施防盜鏈技術。

二、窺視防盜鏈

????????現在大家應該知道了為什么有真實地址仍然不能下載,這就是防盜鏈的作用。凡事必有因果,為什么可以防盜鏈呢,其實現原理是什么?防盜鏈又是如何實現的呢?
????????提到防盜鏈的實現原理就不得不從HTTP協議說起,在HTTP協議中,有一個表頭字段叫referer,采用URL的格式來表示從哪兒鏈接到當前的網頁或文件。換句話說,通過referer,網站可以檢測目標網頁訪問的來源網頁,如果是資源文件,則可以跟蹤到顯示它的網頁地址。有了referer跟蹤來源就好辦了,這時就可以通過技術手段來進行處理,一旦檢測到來源不是本站即進行阻止或者返回指定的頁面。
如果想對自己的網站進行防盜鏈保護,則需要針對不同的情況進行區別對待。如果網站服務器用的是apache,那么使用apache自帶的Url Rewrite功能可以很輕松地防止各種盜鏈,其原理是檢查refer,如果refer的信息來自其他網站則重定向到指定圖片或網頁上。

三、怎么使用防盜鏈

???????在開始防盜鏈之前,首先我們要了解重寫規則,我們可以瀏覽Apache手冊/指令速查/RewriteCond TestString CondPattern 中了解關于重寫的信息。

我們首先得了解referer,也就是網頁的來源哪里,我們可以打開一個php,里面打印一下$_SERVER

?

?

示例代碼:

RewriteCond %{HTTP_REFERER}??? !http:\/\/better.com\/.*

RewriteRule.*\.(jpg|jpeg|gif|png|txt)??? 110.gif

總結

以上是生活随笔為你收集整理的伪静态及图片放盗链的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。