2023年5月22日 星期一

該如何更換 SSL 憑證

webber0928

 一個突然,我們的監控跳出了通知


!!
查了才發現原來是 SSL 過期了,時間過得還真快啊~(嘆

2022年10月27日 星期四

更好的使用 "git checkout"

webber0928


什麼是 git switch 和 git restore?


Git 版本 2.23 加入了兩個指令,他原理與 checkout 命令類似,但不完全相同。
為了更深入地理解,我們來看看他們的作用。

什麼是 checkout?

checkout : 切換分支或恢復工作樹文件


Git 2.23 做了另外兩個命令來區分其取代他。

兩個新命令
  • switch:切換分支
  • restore:恢復工作樹文件

您現在可以專門針對更合適的情況編寫。

如果想切換分支,可以使用:

$ git switch develop
# 與 'git checkout develop' 相同

$ git switch -c new-branch
# 同 'git checkout -b new-branch'


如果想恢復文件,也可以使用:

$ git restore README.md
# 與 'git checkout -- README.md' 相同 

$ git restore --staged README.md
# 與 'git reset HEAD README.md' 相同



現在我們可以用更語意的方式使用 GIT 了:)

2022年8月31日 星期三

text-align: justify - CSS 對齊屬性

webber0928

事情是這樣的,客戶問我可不可以把網頁的內容文字都對齊呢? 當然沒問題啊!


加了 text-align: justify 一切搞定!

沒加的長這樣

加了以後!!

打完收工~

順帶一提,之前不支援的 Apple Safari 已支援。



2022年8月30日 星期二

Vuejs Error: The client-side rendered virtual DOM tree is not matching server-rendered

webber0928

 事情是這樣的,最近在網頁上一直出現這種錯誤:

Vuejs Error: The client-side rendered virtual DOM tree is not matching server-rendered

只好來研究一下該如何解決,順帶一提,我是使用 Nuxt.js


錯誤訊息如下
The client-side rendered virtual DOM tree is not matching server-rendered content. This is likely caused by incorrect HTML markup, for example nesting block-level elements inside <p>, or missing <tbody>. Bailing hydration and performing full client-side render.

後來找一找發現我碰到的問題跟這個人很類似

For me this error happened cuz get Array list in AsyncData and rendered <tr> tags by v-for, i put v-for codes in <client-only> blocks and problem solved
我試著把 v-for 包進去 <client-only> 裡面也確實獲得解決,如果有更好的解法再麻煩告知了,這是我遇到問題以及解決的方法做個紀錄。




2022年8月25日 星期四

nginx 設定 50x 錯誤頁面

webber0928

 事情是這樣的,本人待的小公司因為沒有 load balance 的機制(成本考量),因此在 Server 重新 build 的時候網站會呈現掛點狀態(?不意外吧),為了解決這樣的問題,所以決定要做一個 error page 去告訴敷衍使用者 :)

需求: 當伺服器改版或錯誤時,需要做一個頁面讓使用者知道我們的服務沒有問題

nginx 設定如下

        # 升級頁面
proxy_intercept_errors on;
error_page 500 502 503 504 /index.html;
location = /index.html {
root /home/ubuntu/www/;
}
location ~ \.(mp3|mp4) {
root /home/ubuntu/www/media/;
}

接著把靜態頁面放進去www資料夾裡面,搞定!




2022年8月9日 星期二

網址列沒有 www 的 nginx 設定 (燦笑

webber0928

 www 不是只有拿來燦笑用的,他還是網址列的開頭。那要如何把 www 隱藏起來呢 (燦笑

事情是這樣的,因為我們網站 www 跟沒有 www 的網址都可以通,但是因為 cookie 的網域不同,兩邊的帳號登入無法同步,所以要決定究竟要 www 還是不要 www。

有 www 優勢:
    我這個年代的人習慣前面有 www
沒有 www 優勢:
    品牌名字可以直接呈現在前面
有 www 跟沒有 www 都留著:
    相同內容 seo 只會選一個來做排名

好的!就決定沒有 www 了。

#nginx 設定
if ( $host != '$YOUR_DOMAIN_COM' ) {
rewrite ^(.*)$ https://$YOUR_DOMAIN_COM$1 permanent;
}

搞定,所有 www 都會被 301 轉導到沒有 www 的網址上面。

2022年8月5日 星期五

2022 元滿平安箱

webber0928

最近打球腳受傷,朋友說要帶東西來探望我,我就說那要買個爽的過來喔~

然後我就收到了這個…?



三小?把我當神來尊敬的意思嗎?好吧!我原諒你,裡面不爽的話我會拿拐杖教訓你喔。


打開以後,好啦~裡面也是有幾個我愛吃的餅乾,像是波的多、玉米脆餅跟鹽之花,其他倒是沒什麼在吃。



裡面總共有七包餅乾

- 野菜園

- 波的多 蚵仔煎

- 鹽之花洋芋片

- 鮮肉蝦餅

- 三角薯叔

- 空氣玉米脆餅

- 甜卡力


拿出來拍照以後,看起來的確是很有誠意呢,那我只好來當一下你的神,品嚐一下這些美食,也謝謝我的那個朋友突發奇想買了這一箱過來 XD~



叔叔當然就先來吃薯叔瞜,吃起來跟好市多的薯格格 87 分像,但感覺沒有那麼硬,而且還可以一口塞蠻爽的,這個配酒喝應該很棒~


結果我吃著吃著猛然發現一個特別的東西!



就是紅色圈起來的那個,我一開始還以為是我朋友撞到邊邊才變成這樣的,後來我去查了一下,那個地方居然是可以用來插香的!!



居然有這種方便的設計,太棒了吧!看來快要到的中元節也可以買個一箱來拜一下,讓神也可以嚐嚐這種爽快的感覺,但這箱我就先嘗鮮摟~


2022年7月25日 星期一

複製連結碰到的問題(Safari)

webber0928

事情是這樣的,今天發現在手機上的複製連結功能沒有作用,仔細檢查一下發現是上面有個 await,只要把他隱蔽就正常了!

...?????


後來找到了這篇文章

https://juejin.cn/post/7038773190587318308

看起來是發生差不多的事情,主因是因為 window.open() 的Api 會因為使用 js 去調用的時候,如果超過某個時間就會被認定為不是使用者直接操作,而阻止程式繼續使用。


解決辦法:

所以把 await 的 api 放在最後面就可以解決這個問題。

以下為原本的 code

參考:

https://juejin.cn/post/6979763242134405128

https://zhuanlan.zhihu.com/p/122175288


2022年5月11日 星期三

2022年1月17日 星期一

自建論壇 - NodeBB 的安裝教學

webber0928

NodeBB 是一款由 Node.js 開發的、開源的、現代化的論壇程式,使用MongDB作為資料庫(也可以選擇 Redis,但不推薦)。

本教學將一步步演示,如何在Windows和Linux平台下,搭建 NodeBB 論壇程式。


Github: https://github.com/NodeBB/NodeBB/

安裝Node.js 和 MongoDB

因為NodeBB 使用Node.js開發,所以我們需要先安裝Node.js運行環境。

Node.js

Windows安裝
Node.js官網,下載 Windows 安裝包 (.msi)

Linux or Mac 安裝
這裡介紹使用nvm方式進行安裝,nvm 是 Node.js 版本管理工具,目的是方便對 Node.js 進行版本切換和升級

依次執行下面命令

# 下載並安裝nvm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc

# 通過nvm安裝最新版的Node.js

nvm install node 16.13.2

查詢Node版本,以驗證Node.js是否成功安裝。

node -v (輸出結果應該是:v16.13.2)

安裝MongoDB

NodeBB 默認選擇 MongoDB 作為資料庫。

Windows下安裝
MongoDB官網,下載Windows安裝包
詳細教學請看這邊

Linux - Ubuntu下安裝

wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

查詢 MongoDB 版本,以驗證是否安裝成功

mongod --version
db version v5.0

安裝NodeBB

使用 git clone 下載 NodeBB 源碼

git clone -b v1.18.x https://github.com/NodeBB/NodeBB.git nodebb
cd nodebb

執行下面命令,開始安裝和配置。

./nodebb setup

安裝過程會要你輸入訪問地址,資料庫帳號密碼等配置,如果不清楚,使用默認的設置即可。之後會在項目根目錄生成名為 config.json 的配置文件,後續有變化你可以手動更改。

然後執行啟動

./nodebb start

最後用瀏覽器訪問 NodeBB,http://localhost:4567,看是否正常啟動。

線上的 Demo 網址



2022年1月6日 星期四

設定 S3 的 CORS 規則,並使用 FileSaver 取得圖片下載

webber0928

最近需要做一個功能,就是把上傳的圖片下載下來。

這簡單!我啪啪啪就寫好了,結果出現了....CORS 的問題,因為網址跟 s3 的網址是不同 Domain 的,上網搜尋一下,發現只要設定好 S3 的 CORS 就可以了。


主要設置為:

權限 -> 跨源资源共享(CORS)

[ { 
  "AllowedHeaders": [ "*" ], 
  "AllowedMethods": [ "GET", "HEAD" ], 
  "AllowedOrigins": [ "http://www.example.com" ], 
  "ExposeHeaders": [], 
  "MaxAgeSeconds": 3000 
} ]

因為我主要是取圖片,所以只要這樣設定便可以了。

另外推薦一個好的套件 「FileSaver」,使用程式碼如下

import { saveAs } from 'file-saver';
FileSaver.saveAs("https://httpbin.org/image", "image.jpg");

這個好處是,如果他碰到 CORS 問題,會另開新分頁顯示圖,最差就是讓使用者直接下載,也不用處理 CORS 問題。

2022年1月4日 星期二

在 M1 Mac pro 安裝 Windows 11 UTM 的虛擬機

webber0928

最近朋友問我可不可以幫他在 M1 的電腦上面安裝 Windows,剛好我也很想聞看看新款的 M1,就二話不說地答應了!

搜尋了一下,發現大家都是用 Parallels Desktop 來安裝,但只有 15天試用期,想說就索性跟他申請一下經費來安裝安裝,然後我就又回去搜尋看看有沒有免費的辦法。(貪小便宜的人厚...)

後來找到一個叫 Keith 的安裝教學,也解決了我的困難,那就做個紀錄吧。

M1 Macbook Air 上執行的 Windows 11
M1 Macbook Air 上執行的 Windows 11

簡單步驟如下

  1. 下載 Windows 11 ARM Inside Preview
  2. 安裝 QEMU 
  3. 轉換 Window 11 為 qcow2 格式
  4. MacOS 安裝 UTM
  5. 設定 Windows 11 配置虛擬機
    1.  8 核 CPU ARM64
    2. 4GB RAM
    3. 80GB 類型 NVMe 的 HDD
  6. 啟動 Windows 11 VM
    1.  將 BIOS 中的顯示更改為 1074x768
    2. 安裝 Windows 11
    3. 安裝 Spice 工具 (網路連線用)
  7. 切換Windows 11介面語系為中文
  8. 停用Windows 11更新 (看個人)


詳細步驟說明

下載 ARM

您需要成為 Microsoft Insider Program 的成員,該計劃可以免費加入。

VHDX 文件。他只在 Hyper-V 上運行,但我們可以轉換此映像,讓 windows 可以在 UTM 上執行。

安裝 QEMU

使用 Homebrew安裝 QEMU — 需要安裝 QEMU 方便我們轉換 Windows 11 的映像格式。
如果您安裝了 Homebrew,則跳到最後一點,但如果沒有,則這些是您需要遵循的步驟:

1. 在終端運行中

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

2. 這將安裝 Homebrew 但你需要運行兩個額外的命令

echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> /Users/$USER/.zprofile
eval $(/opt/homebrew/bin/brew shellenv)

3. 現在將安裝 Homebrew,您可以從終端安裝 QEMU

brew install qemu

轉換成 qcow2

為了使來自 Microsoft 的 VHDX 圖像與 UTM 兼容,我們需要轉換格式。我們使用之前安裝的 QEMU。從終端執行以下命令:

qemu-img convert -p -O qcow2 /Users/keith/Virtual\ Machines/Windows10_InsiderPreview_Client_ARM64_en-us_21354.VHDX /users/keith/Virtual\ Machines/Windows10_21354.qcow2

安裝 UTM

安裝 MTU從 https://mac.getutm.app/ 獲取最新版本的 MTU 。UTM 是一個基於開源平台 QEMU 的免費虛擬化平台。這基本上是一個基於 GUI 的 QEMU 版本。

UTM 驅動程序

我們需要在 Windows 11 中安裝 UTM 的驅動程序,以允許 Windows 11 訪問 Mac 網路連接器。

下載 Spice 工具:https://mac.getutm.app/support/

建立 Windows 11 虛擬機

在 UTM 中創建一個名為 Windows 11 的虛擬機並設定下面的設置。

System


架構:ARM64 (aarch64)
系統:QEMU 5.2 ARM Virtual Machine (virt-5.2)
內存:8192MB

勾選 Show Advanced Settings
CPU:默認
CPU Cores:8

勾選 Force Mutlicore

Drives


Import Drive → 選擇 Windows 11 qcow2 鏡像
interface:NVMe

New Drive → 勾選 Removable Drive

Information

CD 放入 Spice 的 iso 檔案

UTM小技巧

Control + Option 使您退出虛擬機

F2 進入 BISO


選擇Device Manager → OVMF Platform Configuration
更改為 1024x768,然後選擇 commit 並退出

按ESC退出BIOS

進入安裝流程


切換Windows 11介面語系為中文

1. 點選「開始」按鈕圖示 -> 「Settings」-> 「Time & Language」

將Time zone變更為「(UTC+08:00)Taipei」




2. 點選「開始」按鈕圖示 -> 「Settings」-> 「Date & time」

將 Country or region 設定為「Taiwan」
將 Regional Format 設定為「Chinese(Traditional, Taiwan)」



2. 點選「開始」按鈕圖示 -> 「Settings」-> 「Language」

在 Preferred languages 點選「Add a languages」


選擇「中文(台灣)」,接著點選「install」開始下載及安裝語系


調整優先的順位,點選「↑」方向按鈕

點選 Options 來 Download 語系的 Language pck


Windows display language 選項中,變更為「中文(台灣)」,並點選「No, sign out later」


重新開機後,再次登入就可以看到一個中文介面的Windows 11了。

停用Windows 11更新


  1. 按下「Win+R」鍵開啟執行視窗。
  2. 透過輸入services.msc並按下Enter鍵以開啟服務視窗。
  3. 在「服務」列表中找到並選擇「Windows Update」選項,然後點擊「停止」按鈕。
  4. 在「一般」選項卡,將「啟動類型」變更為「已停用」。

有任何疑問歡迎提問,以上是我的安裝紀錄,謝謝。




2021年12月8日 星期三

[JS]注音輸入法要怎麼做自動完成呢!

webber0928

如上圖,在輸入中文的時候,通常會需要透過注音之類的輸入法來做拼字。通常 autocomplete 的套件沒有去處理輸入法拼字的問題,畢竟他們打英文不需要多一個注音拼字的動作嘛!

那這個時候要怎麼樣才能做到像 Google 搜尋一樣呢?
其實就是在拼字的時候,就把打在輸入框上面的資料丟出去即可。

Composition Event (組成事件):

透過 Composition Events 我們可以觀察使用者在輸入框內開啟輸入法 (Input Method Editor, IME) 時,組字或選字的狀態。
  • compositionstart:輸入框內開啟輸入法,且正在拼字時觸發。
  • compositionend:輸入框內開啟輸入法,且正在拼字或選字時更改了內容時觸發。
  • compositionupdate:輸入框內開啟輸入法,拼字或選字完成,正要送出至輸入框時觸發。
所以要確認使用者輸入完成並送出文字時,就可以透過 compositionend 來做最後確認。

因為我是用 Vue 來寫,所以會用 Vue 的範例,如下
mounted() {
let isInputZh = false
const searchInput = this.$refs.Input.$el.children[0]

searchInput.addEventListener('compositionstart', function(e) {
isInputZh = true
}, false)

searchInput.addEventListener('compositionupdate', function(e) {
isInputZh = false
}, false)

searchInput.addEventListener('compositionend', function(e) {
isInputZh = false
}, false)

searchInput.addEventListener('input', function(e) {
if (isInputZh) return
remoteApiMethod(this.value)
}, false)
}

用這種方式就可以在輸入法尚未結束的時候丟資料去 API 取資料嘍~

2021年12月1日 星期三

如何建立谷歌部落格(google blogger)

webber0928
有自己的地方就是爽,我要當王!!

最近突然想要建立一個屬於自己的部落格,參考了一些網路文章以後,最後還是決定使用這個 google blogger。

為什麼要選擇Blogger呢?
  1. 免費
  2. 圖庫問題:可以串連Google相片
  3. 數據:有自帶數據統計的功能
  4. 賺錢:未來流量起來可以賺錢
  5. 手機:我覺得手機可以讓你想到什麼就加入草稿,畢竟靈感不是說來就來

基於以上的好處,我就決定是這裡了。
簡單地按完建立以後,重點是要怎麼改成自己喜歡的樣子呢?!

登愣~

Google Blogger Theme: https://gooyaabitemplates.com/

請根據以下步驟處理:
  1. 選擇一個你想要的外觀,並下載 Blogger 模板。
  2. 解壓縮並取出 xml 檔案
  3. 選擇左側列表中的 主題,並且按下還原,上傳你的 xml 檔案
搞定了!就像我現在的部落格這樣。

最後還有一個步驟要做,因為成果如下

你的網頁

你的網頁
他的網頁

他的網頁

....?

所以請去 版面配置 去調整細微的部分



希望大家都可以調整成喜歡的樣子!







2017年1月9日 星期一

mongo 基本的 shell 指令

webber0928
因為是開發 nodejs ,最常用到的資料庫就是 mongo ,不過最近都在開發前端,太久沒有碰觸到他了,今天就來複習一下吧。

基本指令

進入 mongo

# mongo

結果他一直跳出很奇怪的錯誤

Failed global initialization: BadValue Invalid or no user locale set. Please ensure LANG and/or LC_* environment variables are set correctly.

所以我改成
# export LC_ALL=C
# mongo
yes 成功進入!

秀出所有db 

# show dbs

 秀出所有 collections

# show collections

秀出這個 user 欄位的所有資料 

# db.getCollection('user').find({})

更新這個 user 欄位的 startDate 跟 endDate

# db.getCollection('user').update({}, {$set:{'startDate':new Date('2016-01-01'), 'endDate': new Date('2018-01-01')}},{multi:true})

收工!

sitemap 的設定問題 (截至 https://www.sitemaps.org )

webber0928

sitemap 的設定問題



主要是碰到如果我有 http 跟 https 兩種版本,該怎麼做。因為大陸有些還尚未支援 https, 因此在 google 就送 https, 大陸那邊就給 http。

以下是 sitemaps.org 提供問題及解答

問:如何表示在 Sitemap 中的 URL?
如同所有的 XML 檔案一樣,下列字元的任何資料值 (包括 URL),都必須使用實體逸出碼:AND 符號 (&)、單引號 (')、雙引號 (")、小於 (<) 以及大於 (>)。同時您也應該確認所有的 URL 都遵循 RFC-3986 URI 標準、RFC-3987 IRI 標準,以及 XML 標準。如果您使用指令碼來產生 URL,通常可以在該指令碼中加入 URL 逸出的指令。您還是必須將它們實體逸出。例如,以下 python 指令碼會將實體逸出 http://www.example.com/view?widget=3&count>2
$ python
Python 2.2.2 (#1, Feb 24 2003, 19:13:11)
>>> import xml.sax.saxutils
>>> xml.sax.saxutils.escape("http://www.example.com/view?widget=3&count>2")
上述範例的結果 URL 為:
http://www.example.com/view?widget=3&amp;count&gt;2
問:使用不同的字元編碼方式來產生 Sitemap 檔案,會有什麼影響嗎?
是的。您的 Sitemap 檔案必須使用 UTF-8 編碼。
問:如何指定時間?
此通訊協定中的 lastmod 時間戳記以及其他日期與時間,請使用 W3C 日期時間編碼。例如,2004-09-22T14:12:14+00:00。
此編碼允許您略過 ISO8601 格式中時間的部分,例如,2004-09-22 也是有效的。不過,如果您的網站經常變更,建議您將時間部分包含在內,以便讓搜尋器得到更多關於您網站的完整資訊。
問:如何推算 lastmod 日期?
對靜態檔案而言,這是指實際的檔案更新日期。您可以使用 UNIX 的 date 指令來取得這個日期:
$ date --iso-8601=seconds -u -r /home/foo/www/bar.html
>> 2004-10-26T08:56:39+00:00
對於大部分的動態 URL,您或許可以根據基本資料何時變更,或者根據定期的更新大概日期 (若適用的話),來輕易地推斷出 lastmod 日期。您甚至可以使用大約的日期或時間戳記,以避免搜尋器檢索尚未變更的 URL。這樣可以降低您網頁伺服器對頻寬和 CPU 的需求。
問:我的 Sitemap 要放在哪裡?
我們強烈建議您將 Sitemap 放在您 HTML 伺服器的根目錄中,也就是位於 http://example.com/sitemap.xml。
在某些情況下,您可能想要針對您網站上不同的路徑來產生不同的 Sitemap,例如,當您組織的安全性權限會針對不同目錄劃分不同的使用權限時。
我們假定您有權限上載 http://example.com/path/sitemap.xml,則您也有報告 http://example.com/path/ 下之中繼資料的權限。
列在 Sitemap 中的所有 URL 必須和 Sitemap 位於同一個主機。例如,如果 Sitemap 位於 http://www.example.com/sitemap.xml,就不可包含來自 http://subdomain.example.com 的 URL。如果 Sitemap 位於 http://www.example.com/myfolder/sitemap.xml,就不可包含來自 http://www.example.com 的 URL。
問:Sitemap 的檔案大小上限為何?
Sitemaps 不得大於 50MB (52,428,800 位元組),且最多能包含 50,000 個 URL。這些限制是為了確保您的網頁伺服器不會因為傳送的檔案過大而當機。表示如果您的網站包含 50,000 個以上的 URL,或您的 Sitemap 大於 50MB,,您必須建立多個 Sitemap 檔案,並且使用 Sitemap 索引檔。即使您擁有的是一個小型網站,但如果您計劃將網站成長至含 50,000 個 URL 或 50MB. 大小的檔案的規模,則仍應使用 Sitemap 索引檔。Sitemap 索引檔至多可包含 50,000 個 Sitemap,且不可超過 50MB (52,428,800 位元組)。您也可以使用 gzip 來壓縮您的 Sitemap。
問:我的網站中有成千上萬個 URL,我可以只提交最近變更過的部分嗎?
您可以將經常更新的 URL 列在少數的 Sitemap 中,然後在您的 Sitemap 索引檔中使用 lastmod 標記來辨識這些 Sitemap 檔案。這樣一來搜尋引擎只會額外檢索已變更的 Sitemap。
問:在我建立 Sitemap 之後,下一步該做什麼?
Once you have created your Sitemap, let search engines know about it by submitting directly to them, pinging them, or adding the Sitemap location to your robots.txt file.
問:我必須完整指定 Sitemap 中的 URL 嗎?
是的。您需要在 URL 中加入通訊協定 (例如 http)。如果您的網頁伺服器有要求尾端斜線的話,您也必須在 URL 的尾端加入斜線。例如,http://www.example.com/ 對於 Sitemap 而言是有效的 URL,而 www.example.com 則不是。
問:我的網站有 http 和 https 兩種版本的 URL,我該將兩者都列出嗎?
不是,請列出您 Sitemaps 中的一種 URL 版本即可。包含多個版本的 URL,可能會讓搜尋器無法完整檢索您的網站。
問:我網站中的 URL 含有工作階段 ID。我需要移除它們嗎?
是的。在 URL 中包含工作階段 ID,可能會造成網站檢索不完整與多餘的檢索。
問:URL 在 Sitemap 中的位置會不會影響其用途?
否,URL 在 Sitemap 中的位置並不會影響搜尋引擎使用或辨識該 URL 的方式。
問:我的網站中有某些網頁使用頁框,我是否應該將頁框組的 URL 或頁框內容的 URL 也包含在內?
請附上這兩個 URL。
問:我可以自行壓縮我的 Sitemap 嗎?還是一定要使用 gzip 來壓縮?
請使用 gzip 來壓縮 Sitemap。請記住,無論是否有壓縮,您的 Sitemap 均不可大於 50MB (52,428,800 位元組)。
問:XML Sitemap 中的 "priority" 提示是否會變更我的網頁在搜尋結果中的排名?
Sitemap 中的「優先順序」提示只是用來表示您自己網站中的某特定 URL 在和其餘 URL 相較之下的重要性,而這對您網頁在搜尋結果中的排名並不會有任何影響。
問:有沒有可用來驗證 XML Sitemap 的 XML 配置?
是的。您可以在 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd 取得 Sitemap 檔案的 XML 配置,也可以在 http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd 取得 Sitemap 索引檔的配置。您也可以參閱更多關於驗證 Sitemap 的詳細資訊。
問:如果我有其他關於使用通訊協定或提交 Sitemap 的問題該怎麼辦?
請參閱各搜尋引擎的說明文件,以瞭解更多關於 Sitemap 的提交方式和用法。


nslookup 反查IP的好用工具

webber0928
nslookup 使用說明

有些時候, 我們會想要手動查詢 DNS 上一些資料, 或者是要看看 DNS 是否有問題, 此時我們最常用的工具就是 nslookup 了, 基本上 nslookup 會根據 /etc/resolv.conf 的內容去找到所要使用的 local DNS server.



輸入domain name



在查詢時有時會出現 Non-authoritative answer, 代表這個答案是由 local DNS 的 cache 中直接讀出來的, 而不是 local DNS 向真正負責這個 domain 的 name server 問來的. 

Coprights @ 2016, Blogger Templates Designed By Templateism | Distributed By Gooyaabi Templates