來架網站吧!!
我的架站經驗談~

http://bit.ly/fxMKWEB

來架網站吧!! 我的架站經驗談~

生出網站之前...

你的網站是...

  1. 我要做什麼主題?

  2. 什麼方向?

  3. 大概要放什麼內容?

  4. 還是什麼服務?

可以使用現成的CMS

Drupal

圖片來源: http://www.mailjet.com/plugin/drupal.htm

WordPress

圖片來源: http://diywithty.com/category/videos-lessons/wordpress/

Joomla

圖片來源: http://userxper.com/blog/archives/3566

XOOPS

圖片來源: ua.convdocs.org

以上全部都是開放原始碼!!

可根據需求,自行寫這套CMS的外掛擴充

如果自己也想自幹一個出來

還是有現成資源可以用

前端網頁注意

除了會影響維護容易性以外,也會影響搜尋引擎(Google)檢索

後端網頁注意

會攸關這個網站安全程度如何(尤其是電子商務和金錢相關的更要小心)

放在網頁空間常遇到的狀況

如果是自幹系統出來的話,資料庫連接語法不能寫死啊~

範例: 採用PDO -不要寫死!!

db_config.php:

<?php
$DB_SERV = "localhost";    // 資料庫伺服器名稱
$DB_USER = "yuan";    // 資料庫使用者名稱
$DB_PASS = "passwd";    // 資料庫使用者密碼
$DB_NAME = "my_db";    // 指定要使用哪個資料庫
$FORM_PREFIX = "uj_";    // 資料表的前綴字元

connect.php:

<?php
require_once("db_config.php"); // 讀取連結資料庫資訊
// 連接資料庫
$db_connect = new PDO("mysql:dbname={$DB_NAME};host:{$DB_SERV};charset=utf8", $DB_USER, $DB_PASS);
// 查詢uj_users表格
$result = $db_connect->query("SELECT * FROM ".$FORM_PREFIX."users");

範例: 採用傳統寫法 -不要寫死!!

db_config.php:

<?php
$DB_SERV = "localhost";    // 資料庫伺服器名稱
$DB_USER = "yuan";    // 資料庫使用者名稱
$DB_PASS = "passwd";    // 資料庫使用者密碼
$DB_NAME = "my_db";    // 指定要使用哪個資料庫
$FORM_PREFIX = "uj_";    // 資料表的前綴字元

connect.php:

<?php
require_once("db_config.php"); //讀取連結資料庫資訊
// 連接資料庫
$db = mysql_connect($DB_SERV,$DB_USER,$DB_PASS) or die(mysql_error());
// 指定這個資料庫
mysql_select_db($DB_NAME,$db);
// 查詢uj_users表格
$db_table = mysql_query("SELECT * FROM ".$FORM_PREFIX."users") or die(mysql_error());

有了內容,但...
空間呢??

自己準備空間出來

直接拿電腦當伺服器

我個人喜歡的配置

直接拿電腦當伺服器 - Windows

我朋友的伺服器

可愛的樹莓派

對你的分享器”刷機”

如果你的分享器有外接USB隨身碟的功能的話,可以靠刷機,當場變成伺服器

知名的第三方ROM

警告!刷機有風險,有可能導致分享器報銷,請確定了解自己再做什麼以後再下手

別忘了,網路嘿啊...

你的電腦本身是不是外部IP

可用此方法檢查:

  1. 打開終端機(命令提示字元)輸入: ifconfig
    (Windows 則輸入: ipconfig
  2. 我的IP是多少?來比對是否一樣

如果你的電腦不是外部IP

浮動的對外IP

如果你每一次連線時得到的IP不一樣
可使用提供動態DNS對應服務:

設定浮動的對外IP

要我自己準備設備,我沒那麼多錢啊~

那我要怎麼挑選網頁空間??

網頁空間的挑選

存放網站的檔案容量要足夠

一般來說500MB的容量應該就很夠了

除非是圖片、影片很多...

如果有大量圖片or影片的話,建議另外找空間存放

為何要能自己另外綁網址

嗯...這問題

待會就會提到!!

上傳方式

絕對不要挑到”只能透過管理網頁界面上傳”的空間

網頁空間的挑選 #2

其他方面

CPanel

VistaPanel

是否支援.htaccess

我在什麼時後會用到?

線上製作.htaccess - .htaccess Editor

自訂404和其他錯誤頁面

來~讓我們好好的欣賞404吧~

有沒有提供Email

通常什麼時後會用到??

  1. 顧客向你註冊帳號時,要寄給他電子信箱驗證信
  2. 通知顧客已成功訂購、出貨
  3. 定時寄送廣告郵件 ←做人不要這樣嘛~

就算沒提供,是否支援用外部SMTP...其他方式寄送??

不過...挑選空間更重要的...

請打聽評價是否夠穩...

VPS?? 能吃嗎?

當然價格也比虛擬主機高一點

推薦免費的網頁空間

既然有免費的,幹嘛還要用付費的

付費...就是有保障

可以考慮的付費空間

我想測試我挑的空間如何?

使用phpinfo函式來查詢資訊

phpinfo.php:

<?php
phpinfo();

使用PHP探針

有空間了
那別人要怎麼連進來??

網址就是你家門牌

那這網址............

啥鬼!??????

可以用WHOIS查詢

http://www.whois365.com/tw/

頂級域名?二級域名?

頂級域名

  • *.com
  • *.net
  • *.tw
  • *.cc

二級域名

  • *.twbbs.org
  • *.twgg.org
  • *.cu.cc
  • *.no-ip.org

免費網域推薦 twbbs.org

其他免費網域推薦

不過據說因為太容易取得而造成濫用,已被Google封殺,不檢索進搜尋裡

以上都是二級網域

但我還是想要有自己的專屬網址

取得頂級域名...付費吧~~~

網域.後面字大不同

參考資料 http://zh.wikipedia.org/zh-tw/%E5%9F%9F%E5%90%8D

不過現在越來越模糊了

簡單來說就是...你喜歡就好

價錢大不同

以上為粗略估計,每家域名提供商的價錢不一樣 (範例中的台幣美金換算是*30估算的)

推薦店家

購買域名注意

老實說...我最近趁特價的時候,就敗了~

有了域名以後,你就是這域名的主人!!

有了域名以後,你可以...

DNS Server

免費提供DNS代管服務

設定好你的子網域吧~

DNS設定好後可能需要花一兩天的時間對應上

這樣你的網站就大致上成型了~

隨著網站的完成
甚至是開張

你可能會需要...

另外如果網站哪天突然掛掉了...

會希望能在"第一時間"通知你吧~

StatusCake -監控你的網站

Host Tracker

如果自己的主機都沒有當機,還可以向 Host Tracker 拿 uptime 貼紙放在網頁上炫耀一下。

Zeroplex 生活隨筆: Host Tracker 網站監控

進入你的網站要花多久時間?

可以使用網站效能分析工具

pingdom TOOLS

參考資料: [教學] Pingdom 網頁載入速度測試工具,找出拖垮網站速度元凶 - 簡單生活Easylife

GTmetrix

參考資料: GTmetrix 線上免費分析網站效能缺陷,根治拖慢網頁速度元兇 - 電腦玩物

想了解你的網站能承受多少人來訪啊?

Load Impact -給網站做壓力測試

我忘記最多能做多少連線數測試,印象中我的伺服器差不多在50人以上同時連線就差不多炸掉了 QQ

想了解你的網站的流量狀況

流量分析工具

如果不想讓網站的主人知道我是從哪來?

Firefox 設定不要追蹤我

在"編輯"→"偏好設定"→"個人隱私"那邊就能找到。

Chromium 設定不要追蹤我

在"自訂及控制"(工具列的選項紐)→"設定"→"顯示進階設定"那邊就能找到。

網頁背後的摘要

有人覺得搜尋優化
"完全"不用管

那看到這個呢......?

"只是"搜尋,完全沒用啥高深的技術......

不要讓搜尋引擎爬到啊......囧

寫Robots.txt來控制Google的檢索

網頁上的<meta>也是搜尋引擎檢索根據

相關教學

本投影片範例

<meta name="description" content="這是我架起一個個人網站所得到的經驗,就用這份投影片分享給大家吧!!">
<meta name="author" content="元兒~">
<meta name="keywords" content="架站經驗 架站">

Facebook的摘文

<meta property="og:title" content="The Rock"/>
<meta property="og:type" content="movie"/>
<meta property="og:url" content="http://www.imdb.com/title/tt0117500/"/>
<meta property="og:image" content="http://ia.media-imdb.com/rock.jpg"/>
<meta property="og:site_name" content="IMDb"/>
Code來源: 打造方便分享的網頁|Open Graph Protocol篇

最後...很想告訴大家

這份投影片完全就是用網頁寫的!!

採用模板deck.js

網頁真的可以做很多事喔!!!

以上...呼...
希望有幫到大家!

我還是想大喊...

架站真的很好玩!

謝謝大家!!

Creative Commons License本投影片是採用創用CC BY-NC-SA 4.0授權

姓名標示-非商業性-相同方式分享

此投影片原始碼在Github上!!

http://bit.ly/fxMKWEB /

#