您好,登錄后才能下訂單哦!
本篇內容主要講解“如何使用SAE和GitCafe搭建網站”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何使用SAE和GitCafe搭建網站”吧!
創建應用
先是各種注冊。新浪云需要使用新浪微博的帳號才能登錄和使用。
由于新浪云屬于PaaS(即提供軟件運行環境,而不是虛擬主機或者空間),收費模式是根據訪問量,按量收費的,所以我們無需關注服務器的任何指標,我們要做的只是創建一個應用。目前,新浪云需要進行實名認證才能創建2個以上的應用,所以推薦進行實名認證。
創建應用的界面如下:
可以看到,我們的應用將被host在sinaapp.com這個域名下,我們能夠設置的子域名(App name)顯然是全局唯一的,先到先得。除了應用的基本信息外,還需要選擇應用使用的編程語言、框架、模板等。PHP語言的框架和模板十分豐富,而Python和Java則沒有什么可用的框架或者模板。我們這里使用PHP空應用,創建的的應用名假設為testapp,下面會用到。
創建好應用之后,需要配置應用所使用的各種軟件或平臺服務,幾個比較基本的配置如下:
在應用管理-代碼管理中,創建一個版本,這個版本號建議填1
在服務管理-MySQL中,開啟MySQL的功能。除非你的應用不需要數據庫支持,一般MySQL是肯定要開的。管理MySQL使用的是phpmyadmin。
默認情況下,在代碼管理中,可以將代碼打包上傳到應用,或者使用SVN提交,關于SVN參見代碼管理中的說明。我們的重點是使用Git進行提交。
Gitcafe上創建代碼倉庫
注冊
為了使用Git提交代碼,我們注冊使用Gitcafe。因為Gitcafe可以設置自動將代碼推送到新浪云上。
GitCafe是一個跟Github十分相似的代碼托管平臺,本人體驗下來感覺還可以,除了界面綠的我扎眼外…
注冊好之后,為了方便進行git提交可以配置一下公鑰。找到你個人電腦如下路徑的文件:
代碼如下:
cd ~/.ssh/id_rsa.pub
將其中的內容復制粘貼到Gitcafe網站的SSH公鑰管理處,這樣以后在提交代碼的時候就不需要輸入用戶名和密碼了。
創建倉庫
我們需要創建一個倉庫,這更github沒有什么區別,唯一的重點在于設置自動部署到SAE
第一次使用這個功能可能需要你OAuth驗證一下,這很簡單。然后Gitcafe就可以fetch到你在新浪上的創建的應用和相應的版本了。選好保存即可。
目前Gitcafe對新浪的授權沒有做自動刷新,這也許是新浪的Policy,這樣會導致幾天以后,這個授權會過期,屆時可能需要重新綁定一下。希望Gitcafe能夠改善一下。
創建好應用后,可以根據提示在本地初始化應用并提交初始化到Gitcafe。不過這里,為了給后面本地模擬SAE環境埋下伏筆,我對命令稍作改變:
首先在你本地合適的地方創建一個文件夾專門用來存放SAE的應用代碼,比如sae:
代碼如下:
mkdir sae
然后使用如下命令:
代碼如下:
cd sae
mkdir testapp
cd testapp
mkdir 1
cd 1
git init
touch README.md
git add README.md
git commit -m 'first commit'
git remote add origin ...
git push -u origin master
上面的命令在遠程倉庫地址的地方留了...,你需要自己填寫,這取決于你的遠程倉庫地址。另外值得注意的是,需要創建一個以app名命名的文件夾,而且這個文件夾下需要有一個1的文件夾,這里的1代表app的版本號,代碼部分是放在1這個文件夾下的。
如果上面的步驟沒有問題的話,此時由于我們創建了README.md,所以這個文件會被自動同步到新浪云上。
配置本地環境
接下來我們需要配置一個本地執行環境,以模擬SAE的運行環境,從而調試代碼。從這里下載最新的模擬環境,這里以PHP環境為例
下載解壓后,可以發現,模擬環境自帶apache、php、redis等軟件,我們需要配置sae.conf文件,下面是這個文件重要配置項的說明:
DocumentRoot sae應用的根路徑,相當于我們上面創建的sae文件夾,模擬環境每次都是從這個文件夾下的文件夾來判斷有哪些應用
http_port 模擬環境啟動后apache所使用的http端口
mysql_* 模擬環境并沒有自帶mysql,需要使用你本地或者遠程的mysql,所以需要在這里配置這些參數
配置好這些后,用管理員身份啟動init.cmd
如果需要修改php的配置的話,可能需要修改php.sae這個文件。這個文件實際上就是一個php的配置文件,模擬器每次啟動的時候,都會把php.sae的內容復制到php.ini中。不過這里可能有一個bug,對于php.sae中的配置項disable_functions不能正確的復制到php.ini中,導致無法正常使用模擬環境,不知道目前修復了沒有。我的解決辦法是在php.sae中把disable_functions的值留空。
模擬環境啟動后,可以在本地通過http://應用名.sinaapp.com:端口的形式來訪問應用,比如:http://testapp.sinaapp.com:8081
模擬環境會在代碼目錄下創建config.yaml或者.appconfig,這兩個文件是不能通過代碼包的方式上傳到SAE的,否則會出錯。所以,我們需要在.gitignore中忽略這兩個文件,讓它們不被提交到Gitcafe,于是就不會被傳到SAE。
如果將來有第二個應用的話,只需要在sae目錄下創建相應的app名字命名的文件夾和版本文件夾即可,模擬器會自動識別它們。當然你也可以使用模擬器的相關命令完整對應用的管理操作。
使用mysql
為了在模擬環境中使用mysql,除了上面提到的基本配置外,還有兩點需要注意:
mysql數據庫名需要是app_+應用名的形式,比如應用名為testapp,那么對應的mysql數據庫名必須是app_testapp
在php中訪問數據庫需要使用SAE定義好的常量,在實際的環境中也是這樣的。
下面是一個使用pdo連接數據庫的代碼:
代碼如下:
$dbh = 'mysql:host=' . SAE_MYSQL_HOST_M . ';port=' . SAE_MYSQL_PORT . ';dbname=' . SAE_MYSQL_DB;
$ops = array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
$ops = array();
return new PDO($dbh, SAE_MYSQL_USER, SAE_MYSQL_PASS, $ops);
到此,相信大家對“如何使用SAE和GitCafe搭建網站”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。