SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
網站製作⼯工作坊
網站部署與第三⽅方服務整合
2015/05/02 元智⼤大學資訊傳播學系 范聖佑
單元主題
• 在這個單元裡將討論以下幾個主題:
- 佈署前注意事項
- 如何部署網站⾄至線上環境
- 如何整合第三⽅方網路服務⾄至我的網站
部署前檢查表
上線前檢查
• 網站製作完成後,需進⾏行⼀一連串的測試,確
認網站上沒有錯誤或誤植的內容後,再進⾏行
部署,部署完成後才可拿到對外的公開網址
• 若在測試過程中,有發⽣生任何錯誤,則將其
紀錄成⼀一張清單。待逐⼀一除錯修正後,為求
完整,需重新再測試⼀一次以免缺漏!
• 以下列出幾個上線前的檢查表,請務必檢查
完後再部署!
檢查各⾴頁⾯面標題
• 逐⾴頁檢查所有⾴頁⾯面的標題是否正確?
• 常⾒見的標題格式
• {⾴頁⾯面名稱} | {網站名稱}
• 逐⾴頁檢查各⾴頁⾯面使⽤用的 favicon 是否正確?
檢查各⾴頁⾯面內容
• 在製作的過程中,有時會暫時使⽤用假字做排
版測試。製作到最終階段時,別忘了把所有
假字更換成正式的⽂文字內容
• 逐⼀一檢查各⾴頁⾯面內容是否都更新成最終的版
本?若有遺漏的部份,請紀錄下來後,統⼀一
修正
檢查所有媒體素材
• 逐⼀一檢查各⾴頁⾯面上的圖⽚片是否都可以正確顯
⽰示無掉圖?圖⽚片是否都已經更換為最終版本?
圖⽚片顯⽰示⽐比例是否正確?
• 若有使⽤用其他媒體素材,包括動畫、影⽚片、
地圖是不是都可以正確的顯⽰示在⾴頁⾯面上?
檢查⾴頁⾯面連結
• 確認各⾴頁⾯面的連結是否都可以彼此連結無誤
• 在檢查連結的同時,也要確認連結點擊後的
動作 (另開新視窗) 是不是正確?
• 除了檢查站內連結外,也要檢查站外連結是
不是連結到正確的網⾴頁?
網站部署
使⽤用的網路服務
• DIVSHOT (https://divshot.com/)
- ⼀一個專⾨門存放靜態網站的網路主機服務
- 可直接上傳 zip 檔佈署、也可透過指令
- 預設就有三種發佈階段
- 每次部署都有版本紀錄
- 可⽤用帳密保護開發與測試階段版本
- 可對應⾃自⼰己的網址
註冊帳號
新增網站
為網站命名 (網址)
上傳網站
DIVSHOT 平台
發佈階段
[ development ]
開發⽤用、測試⽤用
[ local ]
本機端開發
[ staging ]
階段性發佈
[ production ]
正式上線
在本機端進⾏行開發,
開發完成後送⾄至版本
控制系統
[version control]
原始碼管理
定期將成果部署⾄至
DIVSHOT 上進⾏行測
試
階段性完成時,可先
發佈給客⼾戶測試、確
認實作細節
專案完成後部署⾄至正
式主機,對外公開上
線
密碼保護 密碼保護
測試成果
階段發佈
不同階段的網址
• 開發預覽
-­‐ http://{version}.development.{app_name}.divshot.io	
  
• 階段測試
-­‐ http://{version}.staging.{app_name}.divshot.io	
  
• 正式上線
-­‐ http://production.{app_name}.divshot.io	
  
-­‐ http://{app_name}.divshot.io
密碼保護
持續循環的開發流程
開發 測試 部署 上線測試
發現錯誤
發現錯誤
內容更新
第三⽅方服務整合
豐富網站內容
• 我們已經將各⾴頁⾯面基本的內容和功能完成了,
在這個階段裡,我們可以試著增加更多元素
來豐富我們的網站,包括:
- 增加網站 favicon
- 增加動態元素 (Youtube影⽚片、Google地圖)
- 增加社群外掛 (Facebook 整合)
增加 favicon
• 先準備⼀一張 250 x 250 px 的正⽅方、背景透明
的圖⽚片
• 上傳⾄至 http://iconifier.net/ 製作成 favicon
• 把 favicon.ico 放在網站根⺫⽬目錄底下
• 在 <head> 區塊增加語法:
<link	
  rel="shortcut	
  icon"	
  href="favicon.ico">
增加Youtube 影⽚片
增加 Google Map
增加 Google Map
FB 社群套件
• Facebook 提供了⼀一系列的社群套件,讓我們
可以將部份 Facebook 功能搬到⾃自⼰己的網站
上,讓網站有更多社群功能
• 要注意的是,在安裝 Facebook 社群套件時,
需設定網站真實的 URL。所以在使⽤用前,要
先取得網站佈署後的 URL,且網站要佈署到
主機後,社群套件才能正確運作!
按讚按鈕
• https://developers.facebook.com/docs/plugins/
like-button
留⾔言⾯面板
• https://developers.facebook.com/docs/plugins/
comments
粉絲團⾯面板
• https://developers.facebook.com/docs/plugins/
like-box-for-pages
安裝程式碼
放在 <body> 後第⼀一⾏行
放在 套件 要出現的位置
單元⼩小結
• 在這個單元裡,我們討論了:
- 部署前需注意的檢查事項
- 如何部署⾃自⼰己的網站⾄至 DIVSHOT
- 如何透過第三⽅方服務豐富我們的網站內容
動⼿手做
• 請學員現在就開始將⾃自⼰己的專案部署⾄至
DIVSHOT
• 部署完成測試無誤後,請將⾃自⼰己的網址貼在
本⼯工作坊的粉絲專⾴頁上
• 15 分鐘後我們將進⾏行成果發表!
問與答
學員可開始練習、實作

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Net 6 的 blazor 開發新視界
Net 6 的 blazor 開發新視界Net 6 的 blazor 開發新視界
Net 6 的 blazor 開發新視界
 
開發工具與環境建置
開發工具與環境建置開發工具與環境建置
開發工具與環境建置
 
課程簡介
課程簡介課程簡介
課程簡介
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
使用者認證
使用者認證使用者認證
使用者認證
 
Laravel installfest 工作坊 投影片
Laravel installfest 工作坊 投影片Laravel installfest 工作坊 投影片
Laravel installfest 工作坊 投影片
 
How to choose web framework
How to choose web frameworkHow to choose web framework
How to choose web framework
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 
應用程式佈署
應用程式佈署應用程式佈署
應用程式佈署
 
前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript
 
wagon - 免安裝可攜的 Laravel 開發環境
wagon - 免安裝可攜的 Laravel 開發環境wagon - 免安裝可攜的 Laravel 開發環境
wagon - 免安裝可攜的 Laravel 開發環境
 
Ch14 簡介 Spring Boot
Ch14 簡介 Spring BootCh14 簡介 Spring Boot
Ch14 簡介 Spring Boot
 
COSCUP 2016 Laravel 部署工作坊 - 生態圈介紹
COSCUP 2016 Laravel 部署工作坊 - 生態圈介紹COSCUP 2016 Laravel 部署工作坊 - 生態圈介紹
COSCUP 2016 Laravel 部署工作坊 - 生態圈介紹
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
CRUD 綜合應用
CRUD 綜合應用CRUD 綜合應用
CRUD 綜合應用
 
HTML 語法教學
HTML 語法教學HTML 語法教學
HTML 語法教學
 

Andere mochten auch

Andere mochten auch (17)

CSS 語法教學
CSS 語法教學CSS 語法教學
CSS 語法教學
 
5.網站設計與前端框架
5.網站設計與前端框架5.網站設計與前端框架
5.網站設計與前端框架
 
Package安裝與使用
Package安裝與使用Package安裝與使用
Package安裝與使用
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
應用程式部署
應用程式部署應用程式部署
應用程式部署
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定
 
Route路由控制
Route路由控制Route路由控制
Route路由控制
 
開發流程與工具介紹
開發流程與工具介紹開發流程與工具介紹
開發流程與工具介紹
 
Schema & Migration操作
Schema & Migration操作Schema & Migration操作
Schema & Migration操作
 
Model & Seeding整合
Model & Seeding整合Model & Seeding整合
Model & Seeding整合
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
整合 Open ID
整合 Open ID整合 Open ID
整合 Open ID
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
Eloquent ORM
Eloquent ORMEloquent ORM
Eloquent ORM
 

Ähnlich wie 網站部署與第三方服務整合

试玩前端测试的前因后果
试玩前端测试的前因后果试玩前端测试的前因后果
试玩前端测试的前因后果
Zhicheng Wang
 
網站規劃
網站規劃網站規劃
網站規劃
jiannrong
 
mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟
mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟
mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟
臺灣塔米歐
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
netdbncku
 
網頁自動化測試 -- 從內部工具開始
網頁自動化測試 -- 從內部工具開始網頁自動化測試 -- 從內部工具開始
網頁自動化測試 -- 從內部工具開始
SetMao
 
Appserv setup
Appserv setupAppserv setup
Appserv setup
Ht Wang
 
Mobile app的測試v2
Mobile app的測試v2Mobile app的測試v2
Mobile app的測試v2
Mr PM
 
Practice: Refactor with Tests
Practice: Refactor with TestsPractice: Refactor with Tests
Practice: Refactor with Tests
Manic Chuang
 

Ähnlich wie 網站部署與第三方服務整合 (20)

试玩前端测试的前因后果
试玩前端测试的前因后果试玩前端测试的前因后果
试玩前端测试的前因后果
 
试玩前端测试的前因后果
试玩前端测试的前因后果试玩前端测试的前因后果
试玩前端测试的前因后果
 
用Octopus deploy做自動部署 - 快速上手
用Octopus deploy做自動部署 - 快速上手用Octopus deploy做自動部署 - 快速上手
用Octopus deploy做自動部署 - 快速上手
 
網站規劃
網站規劃網站規劃
網站規劃
 
HITCON GIRLS 資安萌芽推廣 2017: 你知道你連線的網站黑黑的嗎
HITCON GIRLS 資安萌芽推廣 2017: 你知道你連線的網站黑黑的嗎HITCON GIRLS 資安萌芽推廣 2017: 你知道你連線的網站黑黑的嗎
HITCON GIRLS 資安萌芽推廣 2017: 你知道你連線的網站黑黑的嗎
 
mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟
mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟
mobile_VOLANS-「上網行為管理」沒有正確運作時的檢查步驟
 
Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Angular Conf 2018 - 原來 Angular 可以這樣玩設定Angular Conf 2018 - 原來 Angular 可以這樣玩設定
Angular Conf 2018 - 原來 Angular 可以這樣玩設定
 
Office Web Apps Installation
Office Web Apps InstallationOffice Web Apps Installation
Office Web Apps Installation
 
VOLANS 「上網行為管理」沒有正確運作時的檢查步驟
VOLANS 「上網行為管理」沒有正確運作時的檢查步驟VOLANS 「上網行為管理」沒有正確運作時的檢查步驟
VOLANS 「上網行為管理」沒有正確運作時的檢查步驟
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Continuous Delivery: automated testing, continuous integration and continuous...
Continuous Delivery: automated testing, continuous integration and continuous...Continuous Delivery: automated testing, continuous integration and continuous...
Continuous Delivery: automated testing, continuous integration and continuous...
 
91APP: 從 "零" 開始的 DevOps
91APP: 從 "零" 開始的 DevOps91APP: 從 "零" 開始的 DevOps
91APP: 從 "零" 開始的 DevOps
 
網頁自動化測試 -- 從內部工具開始
網頁自動化測試 -- 從內部工具開始網頁自動化測試 -- 從內部工具開始
網頁自動化測試 -- 從內部工具開始
 
Appserv setup
Appserv setupAppserv setup
Appserv setup
 
Mobile app的測試v2
Mobile app的測試v2Mobile app的測試v2
Mobile app的測試v2
 
Practice: Refactor with Tests
Practice: Refactor with TestsPractice: Refactor with Tests
Practice: Refactor with Tests
 
使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)
 
VOLANS「通訊埠轉發」沒有正確運作時的檢查步驟
VOLANS「通訊埠轉發」沒有正確運作時的檢查步驟VOLANS「通訊埠轉發」沒有正確運作時的檢查步驟
VOLANS「通訊埠轉發」沒有正確運作時的檢查步驟
 
10個步驟保護敏捷開發:應用程式安全的作業方法
10個步驟保護敏捷開發:應用程式安全的作業方法10個步驟保護敏捷開發:應用程式安全的作業方法
10個步驟保護敏捷開發:應用程式安全的作業方法
 
Query store查詢調校新利器
Query store查詢調校新利器Query store查詢調校新利器
Query store查詢調校新利器
 

Mehr von Shengyou Fan

[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
Shengyou Fan
 

Mehr von Shengyou Fan (20)

[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your DatabaseUsing the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
 
Composer 經典食譜
Composer 經典食譜Composer 經典食譜
Composer 經典食譜
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
 
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
 

網站部署與第三方服務整合