七牛雲存儲使用教程
1. 如何利用七牛免費雲存儲平台做微信游戲
一,登錄成功後,中間和右上角點擊+新建空間
二,建立空間填寫名稱,並設置為公開訪問
三,點擊內容管理,並點擊右上角的「上傳」按鈕
四,七牛不支持直接在網頁上批量上傳,不能分目錄分組管理文件(如果需要區分文件目錄路徑,就添加文件前綴)
五,因為這些原因,如果文件較多的話,直接在七牛網頁上管理文件是很不方便的,所以建立大家用七牛的客戶端工具,在網頁的右下角。
六,沒有命令行操作經驗的,win系統建議用qrsbox。
七,下載QRSBox後,解壓文件。進入解壓後的目錄,雙擊qrsbox.exe,彈出軟體界面:
其中,access_key 和 secret_key 在七牛雲存儲平台上點擊左上角的房子圖標進入首頁,再點擊賬號設置,在左邊的菜單導航上選擇密匙(查看AccessKey/SecretKey),分別填入上圖的對應輸入框中即可。
同步源目錄:就是本地的文件路徑(例如D:\tianxing)表示同步D盤的tianxing文件夾到七牛空間上。
空間名:就是步驟二中,你創建的七牛空間。設置好後,D:\tianxing文件夾內的所有文件會自動同步到你的七牛雲空間上。
八,七牛系統分配的文件URL和其他相關設置在當前空間的空間設置上可以查看。
到此,七牛雲的使用方法就是這樣了。
2. 如何使用七牛雲存儲免費存儲功能
首先注冊,然後實名制一下領取10個G的免費空間,創建一個
bucket (存放文件的空間)
上傳的你文件,復制外鏈即可!
3. 如何讓網站打開更快第二彈
今天給大家分享一年技術干貨,網站打開速度太慢,如何快速的解決,下面溪風seo今天作了一個詳細的優化教程。
網站響應時間前後對比
1.通過網路統計工具里的發現網站網通打開的時間為15.43秒比81.1% 的網站打開時間長,電信的速度頁面打開時間 13.26秒比79.4% 的網站打開時間長,通過仔細分析發現了導致頁面打開時間較長的因素主要是網站服務的帶寬,網站css和js,頁面沒壓縮,圖片大小等多種因素。
總結:網站響應時間直接關繫到用戶體驗,站點的轉化率等情況,也間接的影響到網站關鍵詞的排名和站點文章的收錄。
轉載請說明出處,本文地址 :http://www.seocheng.com/230.html
七牛雲存儲的 Python 語言版本 SDK(本文以下稱 Python-SDK)是對七牛雲存儲API協議的一層封裝,以提供一套對於 Python 開發者而言簡單易用的開發工具。Python 開發者在對接 Python-SDK 時無需理解七牛雲存儲 API 協議的細節,原則上也不需要對 HTTP 協議和原理做非常深入的了解,但如果擁有基礎的 HTTP 知識,對於出錯場景的處理可以更加高效。
最近剛搭了個markdown靜態博客,想把圖片放到雲存儲中。
經過調研覺得七牛可以滿足我個人的需求,就選它了。
要引用圖片就要先將圖片上傳到雲上。
雖然七牛網站後台可以上傳文件,但每次上傳都需要先登錄,然後選擇圖片,設置連接地址,才能上傳。
這個過程有些繁瑣,所以我便想用七牛雲提供的SDK寫個一同步工具,方便增量同步文件。
有了這個想法,就馬上行動。花了大概一個上午的時間,總算把這個工具給寫出來,並放到GitOSC和github上。
?
#!/usr/bin/env python#-*- coding:utf-8 -*-## AUTHOR = "heqingpan"# AUTHOR_EMAIL = "[email protected]"# URL = "http://git.oschina.net/hqp/qiniu_sync"import qiniufrom qiniu import Authfrom qiniu import BucketManagerimport osimport reaccess_key = ''secret_key = ''bucket_name = ''bucket_domain = ''q = Auth(access_key, secret_key)bucket = BucketManager(q)basedir=os.path.realpath(os.path.dirname(__file__))filename=__file__ignore_paths=[filename,"{0}c".format(filename)]ignore_names=[".DS_Store",".git",".gitignore"]charset="utf8"diff_time=2*60def list_all(bucket_name, bucket=None, prefix="", limit=100):rlist=[]if bucket is None:bucket = BucketManager(q)marker = Noneeof = Falsewhile eof is False:ret, eof, info = bucket.list(bucket_name, prefix=prefix, marker=marker, limit=limit)marker = ret.get('marker', None)for item in ret['items']:rlist.append(item["key"])if eof is not True:# 錯誤處理#print "error"passreturn rlistdef get_files(basedir="",fix="",rlist=None,ignore_paths=[],ignore_names=[]):if rlist is None:rlist=[]for subfile in os.listdir(basedir):temp_path=os.path.join(basedir,subfile)tp=os.path.join(fix,subfile)if tp in ignore_names:continueif tp in ignore_paths:continueif os.path.isfile(temp_path):rlist.append(tp)elif os.path.isdir(temp_path):get_files(temp_path,tp,rlist,ignore_paths,ignore_names)return rlistdef get_valid_key_files(subdir=""):basedir=subdir or basedirfiles = get_files(basedir=basedir,ignore_paths=ignore_paths,ignore_names=ignore_names)return map(lambda f:(f.replace("\","/"),f),files)def sync():qn_keys=list_all(bucket_name,bucket)qn_set=set(qn_keys)l_key_files=get_valid_key_files(basedir)k2f={}update_keys=[]u_count=500u_index=0for k,f in l_key_files:k2f[k]=fstr_k=kif isinstance(k,str):k=k.decode(charset)if k in qn_set:update_keys.append(str_k)u_index+=1if u_index > u_count:u_index-=u_countupdate_file(k2f,update_keys)update_keys=[]else:# uploapload_file(k,os.path.join(basedir,f))if update_keys:update_file(k2f,update_keys)print "sync end"def update_file(k2f,ulist):ops=qiniu.build_batch_stat(bucket_name,ulist)rets,infos = bucket.batch(ops)for i in xrange(len(ulist)):k=ulist[i]f=k2f.get(k)ret=rets[i]["data"]size=ret.get("fsize",None)put_time = int(ret.get("putTime")/10000000)local_size=os.path.getsize(f)local_time=int(os.path.getatime(f))if local_size==size:continueif put_time >= local_time - diff_time:# is newcontinue# updateupload_file(k,os.path.join(basedir,f))def upload_file(key,localfile):print "upload_file:"print keytoken = q.upload_token(bucket_name, key)mime_type = get_mime_type(localfile)params = {'x:a': 'a'}progress_handler = lambda progress, total: progressret, info = qiniu.put_file(token, key, localfile, params, mime_type, progress_handler=progress_handler)def get_mime_type(path):mime_type = "text/plain"return mime_typedef main():sync()if __name__=="__main__":main()這個同步腳本支持批量比較文件,差異增量更新、批量更新。
使用方式
安裝七牛Python SDK
?
1pip install qiniu填寫腳本文件(qiniusync.py)的配置信息
?
123access_key = ''secret_key = ''bucket_name = ''注冊後可以拿到對應的信息
將腳本文件(qiniusync.py)拷貝到待同步根目錄
運行腳本
?
1python qiniusync.py後記
寫完提交之後才發現,七牛已經提供相應的工具,我這個算是重復造輪子吧。
既然已經寫,就發出來,當做熟悉一下七牛的SDK也不錯,說不定以後還能用的上。
七牛雲存儲Python SDK使用教程
本教程旨在介紹如何使用七牛的Python SDK來快速地進行文件上傳,下載,處理,管理等工作。
安裝
首先,要使用Python的SDK必須要先安裝。七牛的Python SDK是開源的,託管在Github上面,項目地址為https://github.com/qiniu/python-sdk。
安裝的方式可以如項目的說明上所說,用 pip install qiniu 。當然也可以直接 clone 一份源代碼下來直接使用。我一般喜歡直接 clone 源代碼,這樣的話,如果要對SDK做一些改動也是十分容易的。
最新版本的Python SDK需要依賴 requests 庫,所以要提前安裝好。安裝方式當然也可以用 pip install requests 。
開發環境
Python的開發環境有很多種選擇,如果喜歡文本的方式,比如vim,emacs,sublime text等都是很好的選擇,如果你喜歡IDE,那麼最流行的莫過於 PyCharm 了。 PyCharm 的最新版本到這里下載。
Access Key和Secret Key
我們知道七牛雲存儲的許可權校驗機制基於一對密鑰,分別稱為 Access Key 和 Secret Key 。其中 Access Key 是公鑰, Secret Key 是私鑰。這一對密鑰可以從七牛的後台獲取。
小試牛刀
好了,做了上面的這些准備工作,我們就去上傳一個簡單的文件,練練手。
?
1234python#coding=utf-8__author__ = 'jemy''''本例演示了一個簡單的文件上傳。
這個例子裡面,sdk根據文件的大小選擇是Form方式上傳還是分片上傳。
?
'''import qiniuaccessKey = "<Your Access Key>"secretKey = "<Your Secret Key>"#解析結果def parseRet(retData, respInfo):if retData != None:print("Upload file success!")print("Hash: " + retData["hash"])print("Key: " + retData["key"])#檢查擴展參數for k, v in retData.items():if k[:2] == "x:":print(k + ":" + v)#檢查其他參數for k, v in retData.items():if k[:2] == "x:" or k == "hash" or k == "key":continueelse:print(k + ":" + str(v))else:print("Upload file failed!")print("Error: " + respInfo.text_body)#無key上傳,http請求中不指定key參數def upload_without_key(bucket, filePath):#生成上傳憑證auth = qiniu.Auth(accessKey, secretKey)upToken = auth.upload_token(bucket, key=None)#上傳文件retData, respInfo = qiniu.put_file(upToken, None, filePath)#解析結果parseRet(retData, respInfo)def main():bucket = "if-pbl"filePath = "/Users/jemy/Documents/jemy.png"upload_without_key(bucket, filePath)if __name__ == "__main__":main()運行結果為:
Upload file success!
Hash: Fp0XR6tM4yZmeiKXw7eZzmeyYsq8
Key: Fp0XR6tM4yZmeiKXw7eZzmeyYsq8
從上面我們可以看到,使用七牛的Python SDK上傳文件的最基本的步驟是:
1.生成上傳憑證
2.上傳文件
3.解析回復結果
5. php表單上傳圖片到七牛雲存儲並返回地址……求具體流程~有代碼更好
有的,我最近研究了一下,寫了一篇記錄,如下
原文地址:http://cuiqingcai.com/?p=157
網上關於七牛雲存儲的教程除了官網上的API文檔,其他的資料太少了。研究了下API之後,現在已經能實現圖片的上傳和下載及上傳之後的重定向。
首先本篇文章實現的功能如下:
1.利用表單上傳功能,用戶可以點擊選擇文件按鈕,選擇本地的一個文件,同時設定上傳的圖片的名稱,點擊上傳按鈕可以上傳並存儲到七牛雲存儲。
2.在點擊上傳時會檢測文件的後綴名,限制為jpg和png格式存儲。
3.上傳成功後跳轉到自己設定的一個URL,並傳迴文件信息,如文件名。而不是顯示七牛白花花的json顯示頁面。
好啦,那我們開始吧,首先我們要有一個七牛雲存儲賬號,如果沒有的就自己去申請吧。
七牛雲存儲傳送門:http://www.qiniu.com/
一.SDK下載
https://github.com/qiniu/php-sdk/tags
戳這個網址下載一下SDK吧,裡面封裝了文件上傳下載等等的方法,我們引入之後可以直接調用。
SDK之中有一個qiniu的文件夾,這是所有的SDK實貨,這個是最重要的。我們首先要把這個文件夾及裡面的文件放到項目文件夾中,比如我放到這里。
大家可以看到有一個qiniu文件夾。好啦,資源支持就是這樣。接下來我們要實現代碼咯。
二.文件的上傳。
1.首先把你七牛雲存儲的密鑰照出來,點擊賬號設置可以看到有一個AccessKey和SecretKey,留著備用。
2.上傳憑證生成。
在這里我們首先要引入rs.php文件,自己找一對應路徑,代碼如下:
require_once(dirname(__FILE__)."/../../qiniu/rs.php");
dirname()是指的絕對路徑,有時相對路徑會出現問題,建議在前面加上dirname方法獲取絕對路徑。
require_once是引入文件,表示該文件只引入一次。
然後,傳入你的AccessKey和SecretKey
代碼如下:
$accessKey='';//換成你自己的密鑰
$secretKey='';//換成你自己的密鑰
Qiniu_SetKeys($accessKey, $secretKey);
然後建一個上傳策略對象,將你的bucket傳入,bucket 就是你的空間名。
$bucket = 'designpartners';
$putPolicy = new Qiniu_RS_PutPolicy($bucket);
然後調用此方法來生成上傳憑證。
$upToken = $putPolicy->Token(null);
接下來就寫一個html表單
<formmethod="post"action="http://up.qiniu.com"name="form"enctype="multipart/form-data">
<ul>
<inputtype="hidden"id="token"name="token"value=<?phpecho$upToken?>>
<li>
<labelfor="key">key:</label>
<inputname="key"value="">
</li>
<li>
<labelfor="bucket">照片:</label>
<inputname="file"type="file"/>
</li>
<li>
<inputtype="submit"value="提交">
</li>
</ul>
</form>
action就填寫up.qiniu.com,表單提供了一個輸入框key,用來輸入你想保存的圖片名稱,上傳到七牛之後就是這個名字。
然後一個文件選擇,一個提交按鈕。運行結果如下:
輸入key值和選擇照片即可實現照片的上傳。哈哈哈有沒有很簡單。
三、文件下載
原理和文件上傳功能相仿。
引入文件
require_once(dirname(__FILE__)."/../../qiniu/rs.php");
聲明你的七牛雲存儲域名和兩個密鑰以及向下載的文件名稱
$key='00000';
$domain='designpartners.qiniudn.com';
$accessKey='';
$secretKey='';
注意:1.key值即為文件名,不要加後綴
2.domain即為bucket加上qiniudn.com,例子中的designpartners就是我在上傳圖片時用的bucket名。
3.accessKey和secretKey換成你自己的,直接用我的不行的..因為我修改了.
Qiniu_SetKeys($accessKey,$secretKey);
$baseUrl=Qiniu_RS_MakeBaseUrl($domain,$key);
$getPolicy=newQiniu_RS_GetPolicy();
$privateUrl=$getPolicy->MakeRequest($baseUrl,null);
echo$privateUrl." ";
傳入這四個值即可生成一樣url,直接訪問url即可實現圖片的下載。
在引入圖片時直接
<img src = "<?php echo $privateUrl; ?>"/>
即可引入圖片咯,很簡單的吧。
四、303重定向
在上面的方法中,我們上傳圖片成功後跳轉到up.qiniu.com下,會顯示白白的網頁,顯示一個json字元串,但是在實際網站開發中我們肯定 不能讓用戶看到這種網頁,所以我們用到了303跳轉。SDK中也為我們封裝了這個方法。使用其實非常簡單。在上傳文件的代碼中添加兩行代碼即可
$putPolicy=newQiniu_RS_PutPolicy($bucket);
$putPolicy->ReturnUrl=site_url()."/upload/receiveInfo";
$putPolicy->ReturnBody='{"key":$(key)}';
注意:1.ReturnUrl和ReturnBody必須指定,並且首字母要大寫,很多人都小寫開頭,這樣會跳轉不成功。
2.ReturnUrl必須是一個公網可以訪問的網址,在本地測試是不可能通過的。比如你寫成localhost,七牛伺服器是定位不到的。
3.這個ReturnUrl的鏈接後會跟著一個?upload_ret=XXX,可以用get方法獲取這個upload_ret。upload_ret的內容是base64安全編碼的json形式的key值。
值的解析:比如我上傳的文件名是555
upload/receiveInfo?upload_ret=eyJrZXkiOiAiNTU1In0=
網址後綴如上所示,把那個upload_ret復制下來,用base64解碼可以出現如下結果:
{"key": "555"}
所以,我們要獲取555這個值的代碼如下,即解析代碼如下:
$upload_ret=$_GET['upload_ret'];
$json_ret=base64_decode($upload_ret);
$result=json_decode($json_ret);
echo"key".$result->key;
好啦,獲取到這個key值之後,你可以選擇存到資料庫或者進行其他的操作咯。
五、上傳前文件類型的驗證
我們可以用js來驗證文件的後綴名,
在form的屬性里加上
onsubmit="return isValidateFile('file');"
加上一個js方法
<script>
functionisValidateFile(obj){
varextend=document.form.file.value.substring(document.form.file.value.lastIndexOf(".")+1);
if(extend==""){
alert("請選擇頭像");
returnfalse;
}
else{
if(!(extend=="jpg"||extend=="png")){
alert("請上傳後綴名為jpg或png的文件!");
returnfalse;
}
}
returntrue;
}
</script>
即可驗證它的類型是否合法。
附:CI代碼實現:
獲取Uptoken:
functiongetUptoken(){
require_once(dirname(__FILE__)."/../../qiniu/rs.php");
//遠程存儲空間名稱
$bucket='designpartners';
$accessKey='';
$secretKey='';
Qiniu_SetKeys($accessKey,$secretKey);
$putPolicy=newQiniu_RS_PutPolicy($bucket);
echosite_url();
$putPolicy->ReturnUrl=site_url()."/upload/receiveInfo";
$putPolicy->ReturnBody='{"key":$(key)}';
$upToken=$putPolicy->Token(null);
return$upToken;
}
文件上傳:
publicfunctionuploadPic(){
$upToken=$this->getUptoken();
$data['upToken']=$upToken;
$this->load->view('upload',$data);
}
303重定向解析:
publicfunctionreceiveInfo(){
$upload_ret=$_GET['upload_ret'];
$json_ret=base64_decode($upload_ret);
$result=json_decode($json_ret);
echo"key".$result->key;
}
文件下載:
publicfunctiondownloadPic(){
require_once(dirname(__FILE__)."/../../qiniu/rs.php");
$key='00000';
$domain='designpartners.qiniudn.com';
$accessKey='';
$secretKey='';
Qiniu_SetKeys($accessKey,$secretKey);
$baseUrl=Qiniu_RS_MakeBaseUrl($domain,$key);
$getPolicy=newQiniu_RS_GetPolicy();
$privateUrl=$getPolicy->MakeRequest($baseUrl,null);
echo"====>getPolicyresult: ";
echo$privateUrl." ";
}
表單:
<script>
functionisValidateFile(obj){
varextend=document.form.file.value.substring(document.form.file.value.lastIndexOf(".")+1);
if(extend==""){
alert("請選擇頭像");
returnfalse;
}
else{
if(!(extend=="jpg"||extend=="png")){
alert("請上傳後綴名為jpg或png的文件!");
returnfalse;
}
}
returntrue;
}
</script>
<formmethod="post"action="http://up.qiniu.com"name="form"enctype="multipart/form-data"onsubmit="returnisValidateFile('file');">
<ul>
<inputtype="hidden"id="token"name="token"value=<?phpecho$upToken?>>
<li>
<labelfor="key">key:</label>
<inputname="key"value="">
</li>
<li>
<labelfor="bucket">照片:</label>
<inputname="file"type="file"/>
</li>
<li>
<inputtype="submit"value="提交">
</li>
</ul>
</form>
6. 注冊七牛雲後該怎麼使用它的雲空間
使用時申請傳送。雲空間保存文檔。使手機增加容量。
7. 七牛雲的私有空間的文件怎麼下載
七牛雲存儲可以方便的將網站的圖片等數據鏡像到七牛雲存儲的空間,直接從雲端將數據返回給用戶。這樣可以大大節省網站的空間,提升網站的訪問速度。真正顯示一鍵實現WordPress博客靜態文件CDN加速。下面主要介紹一下WordPress中七牛雲存儲插件的使用。
工具/原料
WordPress中七牛雲存儲的插件
方法/步驟
首先需要申請七牛雲存儲的賬號,申請好後,點擊創建空間,選擇空間類型為公開空間,提交。
配置空間,點擊一鍵加速網站。鏡像源填寫自己網站域名。確認加速。
接下來在WordPress後台選擇添加我愛水煮魚的「WPJAM 七牛鏡像存儲」插件並啟用。進入插件的基本設置頁面。
七牛綁定的域名:就是我們上面獲取的:http://wptest.qiniudn.com。
*注意:如果博客安裝的是在子目錄下,比如
http://www.xxx.com/blog,這里
也需要帶上子目錄
/blog。比如:http://wptest.qiniudn.com/blog
七牛空間名:設置為我們一開始設置的wptest
ACCESS
KEY 和SCRET
KEY:可以在七牛後台>賬戶設置>密鑰頁面獲取。
其他設置默認即可。
8. phpcms 怎麼用七牛雲存儲
1、首先去github下載網路編輯器UEditor,去github下載:
目錄命名為uediter,放在/statics/js/目錄下面;
2、修改/phpcms/libs/classes/下的form.class文件:
if(!defined('EDITOR_INIT')) {
$str = '<script type="text/javascript" src="'.JS_PATH.'ckeditor/ckeditor.js"></script>';
define('EDITOR_INIT', 1);
}
替換為:
if(!defined('EDITOR_INIT')) {
$str .= '<script type="text/javascript" src="'.JS_PATH.'ueditor/editor_config.js"></script>';
$str .= '<script type="text/javascript" src="'.JS_PATH.'ueditor/editor_all.js"></script>';
$str .= '<link rel="stylesheet" href="'.JS_PATH.'ueditor/themes/default/ueditor.css"/>';
define('EDITOR_INIT', 1);
}
$str .= "<script type=\"text/javascript\"> ";
$str .= "var editor = new .editor.ui.Editor();editor.render('$textareaid');";
$str .= '</script>';
3、修改編輯器默認寬度和高度,因為phpcms默認編輯器沒有那麼大,具體修改方法是:
找到如下代碼,並把前面的兩條「//」刪除。
9. 初次使用七牛雲存儲,請問這是什麼問題
使用七牛雲存儲解決ios7.1的app部署問題
一.問題描述
開發完ios版本的app。需要將.ipa文件和.plist文件打包上傳,供用戶下載,在線安裝。用戶安裝過程簡單描述如下:
首先通過手機瀏覽器safari或者掃描二維碼獲取到下載.plist的地址。然後瀏覽器會自動跳轉到這個地址,下載、讀取.plist。(用戶跳轉的地址是.plist的下載地址。)這個過程,顯然使用http協議來下載.plist文件。最後,iphone通過讀取.plist文件中配置的.ipa下載地址,來安裝.ipa文件,來完成ios版本的app。
舉例,網站首頁中,下載.plist的代碼:
<ahref="itms-services://?action=download-manifest&url=http://www.ekwing.com/ekwing.plist"class="mobile-ios"></a>
但是,蘋果從ios7.1開始,用戶安裝app,需要使用https協議,來下載plist文件。也就說,在安裝app的第一步,下載.plist文件,需要使用https協議。https協議如下:
這里不詳細描述https協議。HTTPS的信任繼承基於預先安裝在瀏覽器中的證書頒發機構(如VeriSign、Microsoft等)(意即「我信任證書頒發機構告訴我應該信任的」)。因此,一個到某網站的HTTPS連接可被信任,當且僅當:
1. 用戶相信他們的瀏覽器正確實現了HTTPS且安裝了正確的證書頒發機構;
2. 用戶相信證書頒發機構僅信任合法的網站;
3. 被訪問的網站提供了一個有效的證書,意即,它是由一個被信任的證書頒發機構簽發的(大部分瀏覽器會對無效的證書發出警告);
4. 該證書正確地驗證了被訪問的網站(如,訪問https://example時收到了給「Example Inc.」而不是其它組織的證書);
5. 或者互聯網上相關的節點是值得信任的,或者用戶相信本協議的加密層(TLS或SSL)不能被竊聽者破壞。
簡單描述,用戶使用https來下載.plist文件。則需要網站支持https協議。支持https協議,除了服務端做一些配置外,還需要申請一個數據簽名證書。這個簽名證書是由簽發機構簽發的。不能自己配置生成。而申請簽名證書需要一段時間。而我們的目的只是希望能夠讓我們的app被用戶正常下載安裝即可。
二.問題分析
解決該問題,就2個方法:
1.自己網站服務上配置https服務,並購買數字簽名證書以保證每種類型及其不同版本的瀏覽器能夠安裝了證書頒發機構頒發的,我們購買的數據簽名證書。時間開銷7天左右。
2.將app文件託管到支持https協議的第三方伺服器上。
三.解決問題
使用七牛雲存儲,可以快速,免費解決這個問題。只需要到http://www.qiniu.com/注冊一個賬號。然後,開通https協議的域名即可。最後將.plist和.ipa文件上傳到七牛雲存儲上即可。操作過程,非常簡單。只要注意幾點:
1. 開通一個http協議的域名,和一個https協議的域名。
如上圖。後綴名是.qiniudn.com的是支持http協議的域名。後綴名是.qbox.me的是支持https協議的域名。上傳.plist、.ipa到七牛雲存儲。
2. 修改下載.plist文件的地址,修改.plist文件內容。
網站首頁,下載.plist地址改成上傳到七牛雲存儲上的支持https協議(域名後綴名是.qbox.me)的下載鏈接地址。
<ahref="itms-services://?action=download-manifest&url=https://dn-ekwing.qbox.me/ekwing.plist"class="mobile-ios"></a>
3. 將.plist文件內容中,.ipa的下載地址,改成七牛雲存儲上的支持http協議(後綴名是.qiniudn.com)
<string>http://ekwing.qiniudn.com/ekwing.ipa</string>
4. 總結,.plist的下載用https協議,而.ipa的下載用http協議即可。修改完後,就可應用ios6、ios7、ios7.1進行測試了。
四. 感謝七牛雲存儲
感謝七牛運存儲提供免費服務。不過,目前防盜鏈還不能用。希望能夠加上防盜鏈功能。
五. 因ios7.1安裝app,需要用https協議而提示的錯誤
無法安裝應用程序因為證書無效
<Warning>:[ERROR]: Cannot load non-https manifest URL:http://192.168.1.22/ekwing.plist
<Warning>:Could not load download manifest with underlying error: ErrorDomain=SSErrorDomain Code=128 "無法連接" UserInfo=0x1669d990 {NSLocalizedDescription=無法連接}
<Warning>: NSURLConnection/CFURLConnection HTTP loadfailed (kCFStreamErrorDomainSSL, -9813)
<Warning>: Could not load download manifest withunderlying error: Error Domain=NSURLErrorDomain Code=-1202 "無法連接到商店" UserInfo=0x166bc640{NSLocalizedDescription=無法連接到商店,NSLocalizedRecoverySuggestion=您仍要連接此伺服器嗎?,NSLocalizedFailureReason=無法建立安全連接。請檢查「日期與時間」設置。,NSErrorFailingURLStringKey=https://192.168.1.22/ekwing.plist,NSUnderlyingError=0x165b37e0 "此伺服器的證書無效。您可能正在連接到一個偽裝成「192.168.1.22」的伺服器,這會威脅到您的機密信息的安全。",=<SecTrustRef:0x166b83e0>,NSErrorFailingURLKey=https://192.168.1.22/ekwing.plist}
10. 七牛雲存儲怎麼布署到伺服器
"在網路覆蓋的范圍內手機、平板、電腦可以隨時的實現文件同步
"部門之間可以安全的文件分享
"所有人對文件的操作行為均可以被記錄
"登錄身份認證機制與企業現有管理機制相結合
"存放於數據中心的文件具備高強度的加密
正是從這種需求出發,推動了廠商對企業私有雲存儲的技術研發,目前市場上已經有部分成熟的產品方案得到應用,筆者剛剛拿到VEsystem 推出的VECloud 2.0最新版,目前正在測試中;在此謹以VECloud 2.0(和信雲存儲)為例,向大家講解企業私有雲存儲的快捷部署方法,供企業信息管理人員在方案選擇時參考所有。
抽象來看與網路雲網盤一樣,部署好的私有雲存儲是一個可以通過瀏覽器輸入網址或IP地址直接訪問的網站。那麼除伺服器基礎平台的建設之後,我們需要就是搭建一套Web Server 的發布平台,最常見的WEB發布平台應該是IIS(微軟伺服器版系統中自身提供) 、以及Apache ,根據不同網站開發語言的需要還需要配置腳本解釋與資料庫支持;比如大家經常提到的ASP + msSQL 、PHP + mySQL 等;
2
VECloud 2.0 對WEB平台要求是:PHP 5.10 / mySQL 5.5
以往在Windows平台手工搭建AMP環境(Apache MySQL PHP)是比較復雜的,幸好現在已經有相應的一鍵式集成包,可以幫助我們快速完成這項工作。筆者比較習慣使用的是EasyPHP,本次部署所採用的版本是12.0 ;EasyPHP 安裝非常簡單幾乎你只用點下一步即可以完成(對AMP 環境的搭建比較熟的朋友可以越過章節)。
安裝結束後會自動打開默認瀏覽器呈現當前AMP配置運行信息,如上圖我們可以看到APACHE 2.42 / MYSQL 5.5.2 / PHP 5.4.4 即已經有運行中,有關EasyPHP 12.0 的詳細調試使用可以參考官方教程或相關文章,作為服務運行的支撐平台,其不屬於雲存儲的技術討論范圍後面的章節中不再重復提及。
接下來我將VECloud2.0 的WEB站點的發布包,解壓到WWW 目錄中,然後通過瀏覽器訪問本機IP 如127.0.0.1??即可以打開這個站點;站點首次被打開時會有一個安裝向導完成初始的部署工作。如下圖:
點擊"現在就開始"…
接下來的頁面中會顯示出當前WEB伺服器的環境配置信息,以及和信雲存儲對環境基本要求自檢結果,為了保障功能的全面正常執行,建議按照提示信息的要求,調整伺服器的配置信息以達到推薦標准,如下圖:
在默認情況下 PHP 擴展中的PHP_EXIF 、PHP_GETTEXT 、PHP_LDAP 、PHP_OPENSSL 並未消開啟,最大文件限制默認為2M ,這里會建議我們開啟上述擴展並調大文件限制。
這都可以通過修改PHP.INI 配置文件來實現,PHP.INI 文件默認存放在apache 目錄中,可以用記事本打開
可以通過查找方式找到PHP_EXIF 、PHP_GETTEXT 、PHP_LDAP 、PHP_OPENSSL 這幾項PHPExt 所在位置,注意行前一個" ; "(分號),分號表示此行被注釋,只需要將分號去掉即可,(如上圖)如果是手工搭建的AMP 環境需要確定對應DLL 文件已經安裝注冊。
同時找到upload_max_filesize = 項,將最大上傳文件的大小設定到一個合適的值。如上圖
重新啟動Apache 服務,刷新頁面後我們可以看到自檢測結果已經發生變化,目前我們WEB服務端的配置已經完全符合推薦要求。
點擊"下一步"繼續…
接下來的配置是關於MYSQL資料庫的參數,我們需要創建一個資料庫管理員以及對應的資料庫、表名前綴;
可以通過PHPMYADMIN(MYSQL的在線管理工具,如果是通過EASYPHP安裝則已經自帶)來方便的創建用戶並同時創建與用戶名同名的資料庫;如下圖:
添加 [ 用戶 ] / [ 添加用戶 ], 輸入用戶名VECLOUD 、主機:127.0.0.1(如無分布部署或有額外的名稱解析,應採用本機IP), 勾選"創建與用戶同名的資料庫並授予所有許可權"
通過上述操作我們就為雲存儲服務端創建了專用的資料庫管理用戶及同名的資料庫。
返回到雲存儲的安裝界面,注意最後一項是關於"文件存儲路徑"的設置,在此處可以設定一個目標路徑,當雲存儲服務上線之後,用戶上傳分享的文件都將保存在這個路徑之下,因為目標路徑建議採用專業存儲陣列或設備,確保並發速度與數據安全。
接下來的頁面中可對雲存儲的管理用戶與密碼進行設置,提示:管理員將可以在後台管理所有用戶的信息以及系統的相關參數設置,一定要管理好該用戶並設置高強度的密碼,防止被猜測破解後登錄。
點擊"下一步"繼續
至此,"和信雲存儲"的安裝已經完成,可以試一下在瀏覽器中再次打開127.0.0.1 訪問
這一次打開的不再是安裝向導,一個真正架設在內網中的私有雲存儲用戶登錄界面呈現在眼前,VECloud 同時提供了Windows / Android / IPhone 、IPAD 的客戶端,對此私有雲存儲的訪問方式不限於網頁登錄,也可以隨時用移動設備登錄分享、同步自己的文件。
天互數據 為您解答,希望能幫到你