成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

不務正業,搗鼓了一個破網站,全過程記錄

開發 架構
在互聯網領域,我也是一名門外漢。所以就拋棄了很多現代的、方便的工具,從最基本的html、javascript、css開始,一步一個腳印的把一個靜態的個人網站給攢起來。

這篇文章沒有什么關于嵌入式的干貨,僅僅是詳細記錄一下前段時間搗鼓的一個靜態的個人網站。

最近都沒有想到什么好的文章方向,下一階段想把之前對Lua語言的學習心得總結一下,實現一個基于插件機制的物聯網網關。

或者再稍微往工業領域上走一些,實現一個可以二次開發的工業網關。

目前只是有這個模糊的想法,具體做成什么樣子還有待更詳細的計劃。

寫這個網關的目的有兩個:

通過Lua語言來深入的理解一門【語言】,而不僅僅是使用一門語言。

實現一個基本上可以在生產環節可用的代碼模型。

這兩個目的基本上符合我的定位:讓有意思的事情變得更有意義。

言歸正傳,回到這篇文章的主題:從頭開始,一步一步搭建一個靜態的個人網站。

為什么會有這個網站

作為一個嵌入式軟件開發者來說,搭一個網站有點是不務正業的。

但是作為一名廣義上的程序員,又經常對互聯網領域的一些技術心生向往,于是就有了這個破網站。

最主要的初衷是:

在工作的過程中,經常需要參考一些常用的工具,比如:

  • 查找ASCII碼;
  • 查詢 shell 指令;
  • 時間戳轉換;
  • 格式化 Json/xml 等文檔;
  • 。。。

每次在遇到上面這些需求時,總是需要去麻煩搜索引擎;即使把一些工具站點保存在收藏夾中,還需要按照分類區點擊、打開。

所以我就想:是否可以寫一個簡單的、靜態的頁面,把自己經常使用的工具、鏈接都放進去,每次需要使用的時候,就打開這個頁面就可以了。

換句話說,這個網站的最大作用就是:工具導航。

市面上也有很多這樣的工具導航網站的。

后來發現,我也會經常去翻一下自己寫的文章,于是就把所有的文章進行分類,然后也放到網站上。

于是,我就開始用三腳貓的web技術搗鼓這個網站...

我們知道,現在已經有很多現成的一鍵建站工具了,就像黑盒測試一下,我們只需要把自己的資料按照指定的格式、流程輸入進去,一個漂亮的頁面就立刻出現在面前。

但是作為一名軟件開發者,還是希望能夠偷窺一下這里面的一些細節。

在互聯網領域,我也是一名門外漢。所以就拋棄了很多現代的、方便的工具,從最基本的html、javascript、css開始,一步一個腳印的把一個靜態的個人網站給攢起來。

如果要部署一個動態網站,那需要掌握的東西就多了去了:java、jsp、maven、mysql、mybatis、spring那一套。

當然,為了避免最后的結果太難看,我也充分地“借鑒”了bootstrap前端開發框架,因為它簡潔、直觀、強悍,并且提供了很多免費的、漂亮的主題框架。

預覽幾個頁面

網站的缺陷

在貼出頁面之前,先說一下幾個缺點:

  • 圖片太多,導致加載的速度太慢。

我已經把所有的圖片放在七牛的圖床上了,也啟用了CDN節點來緩存頁面,但是其中有幾個大圖片影響了加載速度。

下面是PageSpeed Insights對網站的測試結果:

圖片

圖片

從測試結果中可以看到,主要還是圖片惹的禍。

我已經把所有的圖片換成.webp格式了,但是其中幾張大的圖片影響了加載速度。我也不準備優化了,因為下面第2個原因。

  • 添加新的內容時,操作步驟太多。

前文說過,這個網站的主要目的還是自用,所以會經常添加新的內容,比如:看到了特別棒的網站,需要把鏈接添加進去。

由于在網站導航布局中,為了美化一下,使用一個小圖片放在站點上。

因此每次添加時,需要下面幾個步驟才能完成:

  • 對目標網站進行截圖;
  • 把png格式的圖片轉成 .webp 格式;
  • 把圖片傳入到七牛的圖床上(需要登錄、打開目標位置、選圖片、上傳);
  • 修改靜態的html頁面;
  • 上傳到web服務器;
  • 更新CDN緩存節點內容;

以上這個步驟想想都覺得很煩,而且無法用自動化的腳本來實現。

基于以上這些原因,后面會重新部署一下,還是以實用主義為主。

不管怎樣,這里還是把目前網站的頁面貼幾張截圖,下個月可能就被撤掉了,以后也能偶爾回憶一下~~

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

網站搭建過程

1. 服務器

如果把站點部署在公網上,肯定需要買一個服務器。

國內的話就那么三家,選擇便宜、文檔、使用人數多的買就行了。

我使用的服務器是之前一個項目中用來測試MQTT性能的,后來廢棄不用了,第一年費用不到一百元。

圖片

購買服務器的時候,需要選擇操作系統,這里使用的是Ubuntu18.04。

2. 域名

為了便于記憶,最好注冊一個域名。

現在的域名很便宜,普通的域名大概30元/年,主要就是域名備案需要花一些時間。

現在備案方便多了,直接在手機上就可以完成。

很久以前的備案,還需要郵寄一塊背景幕布,專門用來拍照用。

域名備案完成之后,就可以綁定購買的服務器IP地址了,也就是域名解析。

圖片

順便把80端口也打開,因為下面需要通過這個端口來訪問站點。

圖片

3. html + js + css

因為目標是一個靜態網站,所以基本上粗略的掌握上面這三部分的知識點就足夠了。

另外,為了美化一下界面,使用了bootstrap這個前端框架,而且它還提供了很多漂亮的模板。

于是,在攢的過程中,我就把每一個模板中被我使用的部分摘抄出來,組裝在一起,形成了最后的界面。

下面這張圖是文件結構:

圖片

在寫代碼的時候,使用的軟件是WebStorm,我覺得挺好用!

4. 圖片轉換

很多網站使用的圖片都是webp?格式,它的圖像壓縮算法比較好,有更小的文件體積,而且保持很高的圖片質量,支持Alpha透明以及動畫等特點。

這里主要貼一下如何是用谷歌轉換工具,批量的把png?格式的圖片轉換成webp格式。

以下步驟是在MAC下操作

(1) 下載libwebp的庫

brew install webp

(2) 下載轉換工具,解壓

libwebp-0.6.0-mac-10.12.tar.gz

下載地址:https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html

(3) 轉換單張圖片

./cwebp -lossless 輸入圖像路徑 -o 輸出圖像路徑

(4) 批量轉換多張圖片

#!/bin/bash

CMD=/<絕對路徑>/libwebp-0.6.0-mac-10.12/bin/cwebp

for file in *.png
do
${CMD} -lossless "$file" -o "${file%.*}.webp"
done

5. 安裝 web 服務器

可選的web?服務器有很多,常用的有tomcat、apache、nginx,當然還有很多其它的選擇,都有各自的特點。

感興趣的朋友可以去搜一下它們各自使用的場景,我最后選擇的時nginx,安裝命令很簡單:

sudo apt-get install nginx

安裝好的文件位置:

  • /usr/sbin/nginx:主程序
  • /etc/nginx: 配置文件
  • /usr/share/nginx:靜態文件
  • /var/log/nginx: 日志

當然,如果要更清楚 Nginx?的配置項放在什么地方,可以打開文件/etc/nginx/nginx.conf 看一下。

如果想手動安裝的話,步驟如下:

sudo apt-get install libpcre3 libpcre3-dev
apt-get install openssl
apt-get install zlib1g-dev
wget http://nginx.org/download/nginx-1.11.3.tar.gz
cd nginx-1.11.3/
./configure
make
make install

啟動、停止服務的相關命令:

sudo service nginx {start|stop|restart|reload|force-reload|status|configtest|rotate|upgrade}

在啟動nginx?之后,就可以在瀏覽器中測試一下安裝是否成功,如果一切順利的話,可以看到nginx的默認頁面。

6. 站點部署

最簡單的操作,就是直接把本地寫好的站點代碼直接推送到/var/www/html目錄下即可。

為了更靈活的部署(比如:在一個服務器上部署多個站點),最好創建站點獨立的目錄。

nginx?的配置文件位于:/etc/nginx,如下所示:

圖片

比較重要的是目錄sites-available和sites-enabled。

目錄中包括:

圖片

請忽略這里的 https,那是為了測試 ssl 訪問而設置的。

配置文件:/etc/nginx/sites-available/linuxbar.net的內容是:

圖片

也就是說:所有的文件是放在/var/www/linuxbar.net/html目錄下。

因此創建這個文件,并且把步驟3中的所有文件推送到這個目錄下即可,最終部署的所有文件如下:

圖片

小結

完成以上步驟之后,就可以在本地瀏覽器中輸入域名,然后就可以看到漂亮的網站了!

7. 使用圖床

在上面的第6步中,把所有的文件都放在了站點中,包括圖片文件。

當瀏覽器訪問站點的時候,所有的文件(特別是圖片)都直接從web服務器的鏈路里獲取,浪費流量。

可以利用一些免費的圖床來存放圖片文件,瀏覽器獲取html?文件之后,加載圖片時,就從圖床中獲取圖片文件,大大減少了web服務器的壓力。

我使用的是七牛的圖床,因此把所有圖片上傳到圖床上,然后把html文件中對圖片的鏈接全部修改一下就可以了。

當然了,也可以選擇其他的圖床工具,很多免費的(收費的也很便宜)。

8. 使用 CDN 加速

在上面第二步:綁定域名和IP?地址的時候,使域名直接解析到對應的web?服務器所在的IP地址。

可以利用CDN域名加速功能,來提升訪問速度,提高用戶體驗。設置如下:

圖片

配置完成之后,會得到一個cname?,然后在域名解析設置中把域名指向這個cname即可:

圖片

完成這個設置之后,在瀏覽器中輸入域名,將會訪問CDN節點。

當然了,如果節點中沒有內容,將會訪問web服務器,把最新的頁面緩存起來,然后再返回給瀏覽器。

總結

這篇文章從一個初學者的角度,來描述如何從零開始建一個靜態頁面的個人網站。

責任編輯:武曉燕 來源: IOT物聯網小鎮
相關推薦

2015-10-29 10:31:01

Android開發微軟

2012-08-08 17:24:33

SCO

2012-03-01 17:40:47

百卓網絡Smart

2021-09-30 09:45:03

人工智能語言模型技術

2011-02-22 10:46:02

Samba配置

2009-04-23 10:04:55

2009-12-08 17:56:16

WCF配置

2011-04-18 15:56:10

軟件測試

2009-04-13 12:37:18

2011-09-06 15:38:20

QT安裝

2011-01-21 17:51:52

2010-03-01 17:01:03

Python編程技巧

2010-03-10 13:24:45

Zend Debugg

2010-11-19 10:11:49

Oracle物化視圖

2012-11-06 10:19:18

Java自定義加載Java類

2010-06-17 13:10:09

Linux Grub修

2009-06-10 16:55:42

cygwin netb安裝

2010-07-21 14:51:19

telnet-serv

2019-05-14 15:27:31

MongoDB自動備份數據庫

2011-03-11 10:39:02

YUM安裝LAMP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一级黄片一级毛片 | 一区二区免费高清视频 | 国产午夜在线 | 在线播放国产一区二区三区 | 日本高清不卡视频 | 亚洲精品欧美一区二区三区 | 91免费观看 | 亚洲 欧美 精品 | 天天看天天摸天天操 | 在线视频日韩 | 国产成人小视频 | 免费av观看 | 日韩中文一区 | a毛片视频网站 | 久久高清国产 | 国产精品1 | 国产亚洲精品久久午夜玫瑰园 | 国产真实精品久久二三区 | 亚洲超碰在线观看 | 国产欧美日韩一区二区三区在线 | 国产精品99久久久久久大便 | 国产综合区 | 日韩精品一区二区三区久久 | 欧美黄色一区 | a亚洲精品 | 精品欧美一区二区中文字幕视频 | 丁香久久 | 久久久久久久国产精品视频 | www.久久.com | 欧美一级视频免费看 | 日韩不卡在线观看 | 国产午夜精品理论片a大结局 | 日韩一级免费看 | a在线观看 | 理论片87福利理论电影 | 国产精品久久久久久久久久久免费看 | 久久精品国产99国产精品 | 亚洲高清视频在线 | 日韩精品专区在线影院重磅 | 99在线国产 | 亚洲一区不卡在线 |