首頁 我的資訊兩三事

我的資訊兩三事

我的資訊兩三事主要收錄關於資訊產業的相關知識以及生活上遇到的資訊難題,但還是會以工作上碰到的議題為主,例如軟體工程、雲端計算與專案管理等等領域,期望可以讓有興趣的讀者獲得更多資訊。

您也可以加入Line社群一同參與討論,Line社群加入連結:Line社群 QR Code

我們同時也會將文章同步到臉書粉絲頁:https://www.facebook.com/hcm640125/

Web Development

WordPress網站版型等於無痛建置網站?

WordPress網站版型等於無痛建置網站?這是近期聽到不少人的疑問,甚至是不少人認定的事實,但是否套現成的版型就可以無痛建置網站,其實這裡面有幾個不太正確的思考點,以下一一說明。 WordPress是免費的,所以用它建網站應該要很便宜? WordPress確實是免費的,但它只是一個框架,並不是現成的東西,很多人以為裝好WordPress就完成我的網頁了,其實後續還有很多工作要做,要完成自己的網站是需要很多後續工作,包括網站規劃、網站設計、內容準備等等,不要以為是WordPress就覺得它應該是便宜的。 安裝WordPress很簡單嗎? 對於有足夠知識的人而言,確實很簡單,但對於第一次建置網站的人,是有很多東西需要學習的,包括 選擇網站提供商,不管是自己在GCP、AWS或Azure自己建置網站伺服器,還是去買Bluehost、A2 Hosting、CloudWays、GoDaddy等國外有名提供商,或者在台灣找遠振、戰國策這一類本地提供商,都需要一定的了解才能選擇正確的提供商,不然就會發生網站牛步等等問題 安裝WordPress很快,如果網站提供商有現成的安裝工具更快,但如果沒有,你就要學會如何建立MySQL資料庫,設定帳號密碼與權限 裝好就可以了嗎?你要規劃好自己的網站有幾種主要方式 第一個就是使用WordPress原生的版型,自己編輯頁面,透過WordPress編輯器把你想要的頁面建立好,這種方式可以呈現的效果很有限 選一個版型,買下來,用這個版型直接改裡面的文字與圖片,這是最快可以讓你的網站呈現一定專業度的方法 選好版型後,自己寫一些程式,下一些CSS語法,讓你的網站與他人與眾不同,但你要有比較多的HTML、CSS,甚至RWD的常識才有辦法做這些事情 所以安裝WordPress簡單嗎?其實算簡單,但後續的工作才是困難的地方 不使用WordPress框架的公司會比較專業? 這個問題見仁見智,我個人是覺得WordPress有個強大的支持體系,會隨時更新,所以安全性問題會比較少,而且彈性靈活,建置網站速度真的會比較快。 當然,有些傳統網頁公司開發的框架也可以快速發展出網站,但其實這種框架會比較受限於開發時的想像,彈性不一定比較高。 建置一套WordPress網站需要多少時間? 如果你不想買任何版型,想在原生版型上開發,或者你只想找到免費版型(也是有,但不多,大多好版型都是要錢的),自己去刻出自己要的網站,這樣需要多少時間?根據我的經驗,你可能需要花至少兩周的時間,至少80個小時去做,而且不會太漂亮,也不一定會有好的RWD體驗。 那,如果你買了版型就會比較快嗎? 如果你沒有像要製作一個與眾不同的版型,那就只有學習使用版型編輯器(每個版型的編輯器都不太一樣,但目前我看到的主流是WPBakery,蠻方便用的),然後上稿,要學會WPBakery,如果有一定的網頁知識,大概兩到三天,但版型會有一些設定要做,學版型的設定就是每一套要獨立學,最後,上稿則要花時間去準備資料,這部分也很花時間,上稿又是另一個花時間的地方,但一般來說RWD是現成的,只要你不要破壞它的結構就不會有大問題,以這樣的基礎,可能需要的時間是 安裝WordPress+版型: 2小時 學會版型的使用方法:6小時 準備文稿:16小時 (如果網站不複雜的話) 將資料上稿並根據上稿狀況修正準備的資料,例如圖片解析度要配合版型:40小時 如果沒有任何意外,大概需要64個小時。 如果你選的版型又想要在上面客製化的話,你除了上述時間與技能,還要會幾個主要技術:PHP+CSS+Bootstrap等等,然後根據客製化幅度,可能會需要50小時到500小時不等 因此,一套有專屬風格的WordPress網站,使用現成版型之下,至少也需要100個小時左右的時間,如果你對版型與工具都很熟悉,至少也要60小時,大約八個人天,一般來說有這樣能力的人,是需要一定的成本的。 有推薦的版型嗎? 其實不同的目的可能有不同的版型適合,並沒辦法用一個版型做所有的事情,當然也不是不可能,但就是會有些侷限,目前看到比較好的版型是Avada,另外內建WPBakery的版型也不錯,如果你覺得買版型很花錢,也可以參考加入一些版型吃到飽的會員,例如Envato Elements,不過上面並不是你要的都有,所以有時候還是要花錢在別的地方買。 甚麼是編輯器? WordPress有一個預設的陽春編輯器,5.0之後增加了一個區塊式的編輯器,叫Gutenberg,但很多人表示既有的Classic Editor比較好用,甚至有外掛是用來把Gutenberg關掉的,但這個就看個人喜好。 其他的編輯器我用過的有Avada,這個編輯器是附加在Avada版型中的,所以要買Avada才會有這個編輯器, WPBakery是我目前看過最多版型使用的編輯器,也有很多外掛是用來增加WPBakery能力的,但WPBakery原始的功能就很多了,可以用來放Google地圖、放FAQ以及各種常用元件,應該可以讓你設計出大部分的效果。 Elementor是比較新的編輯器,但也有不少版型是用Elementor,有需要也可以考慮使用。 為什麼還需要會CSS? 因為版型與編輯器會有很多限制,可能辦不到你要的呈現效果,這時候就需要用CSS語法來做微調,甚至有需要時還得寫一些JavaScript來達成目的。 WordPress是唯一選擇嗎? WordPress使一種CMS,也就是內容管理系統,CMS有八成以上是WordPress,剩下兩成,我有遇過也比較流行的是Joomla和Drupal,他們比WordPress設計更加嚴謹,但資源相對少,彈性卻比較大,但要會寫點Code。 網路上有沒有甚麼資訊可以更方便了解相關資訊? 我很喜歡的一個網站是『網站帶路姬』,很多同性質的網站都會以銷售網站為主軸,但這個網站確是以分享『知識』為主要目的,當然它也有自己的課程等等服務,但還是很不吝嗇地分享許多真的很有用的資訊。我不認識站主,沒有幫她做廣告,只是純粹想分享給大家參考。 結論 WordPress網站版型等於無痛建置網站?其中其實隱含了許多妳看不到的工作與成本,一個網站做下來,其實是要花費很多時間規劃與執行,並不代表版型就是現成的東西,他只是一個框架,只是讓你的網站可以在一個比較好的出發點自行發展,並不是現成的東西。 還有問題嗎?可以透過頁面最下方的跟隨我們各種社群媒體方式聯絡到我。 本文章同時發表於 https://hcm86.blogspot.com/2021/02/wordpress.html 本文章同時發表於 文藝沙發堂 文章同時自動發布到 https://www.facebook.com/hcm640125
Hacker

甚麼是駭客?他是破壞者嗎?

駭客(Hacker)這個名詞在原本的定義是指對於系統非常熟悉的電腦高手,是很正面的一個名詞,但後來有些駭客用了這些技術進行牟利等等行為,導致駭客這個名詞有點像是資訊安全的破壞者,其實這與現實有很大的差距。 駭客(Hacker)指的是很熟悉系統原理並且可以由系統中找出可能的漏洞的人,他們找出漏洞的目的並不是破壞而是要修補,因此駭客其實是系統資訊安全的維護者,他們不斷使用自己的專業能力找出系統的可能漏洞並且提供修補建議給系統廠商,這些廠商可能是賣商業軟體的廠商,也可能是Open Source的維護組織,尤其對於Open Source組織而言,這些駭客的貢獻是讓這些軟體系統更加穩定的重要功臣。 那資安破壞者算是駭客嗎?從定義上來看,他也算是一種駭客,但我們經常會給他們另一個名字,叫做Cracker,當然也有更多的各種名字被定義,但我看到比較常被使用的就是Cracker,或者直接叫他黑帽駭客。 黑帽?駭客戴帽子?其實這是一種常被使用的比喻方式,白帽是比較正統的一方,他的目的是要讓更好的目標達成,反之,黑帽就是要從事各種破壞目的,那有中間的嗎?我們一般稱之為灰帽,就是遊走在灰色地帶,他不對系統做出破壞,但可能用這些漏洞從事一些只對自己有利的事情。我們整理一下這三種駭客的差異 白帽駭客(Whitehat Hacker): 透過正規方法發現並起提供安全漏洞的解決方案 灰帽駭客(Greyhat Hacker): 透過灰色地帶的技術達成某些特定目的 黑帽駭客(Blackhat Hacker): 透過非法手段達到破壞之目的,一般稱之為Cracker(黑客),也就是資訊犯罪者 因此,駭客有分很多種,並不一定是不好的名詞代表,未來有機會再來做更多的說明。
Windows Service Name

如何用Windows Batch排程將服務完全重新啟動

我們常會有些服務停用需要時間,所以如湖你的Batch File把服務停掉馬上啟用,有可能會因為服務還沒完全停用而啟用失敗,因此我們會需要停用後停個一段時間再啟動服務,因此Batch內容可能如下 @ECHO OFF ECHO Stoping Service net stop ServiceName ECHO Start Waiting 300 Seconds timeout /T 300 ECHO Starting Servic net start ServiceName 其中的ServiceName是服務代碼,可以在服務清單中雙擊服務後看到服務細節,其中的服務名稱就是我們要的字串 但如果你不放心要怎麼確定服務已經停止? 這時候就可以用sc指令來檢查,如果確定已停了,就將服務啟動,範例如下 @ECHO OFF REM Testing at cmd : sc query "ServiceName" | findstr RUNNING sc query "ServiceName" |...

【凡塵集091035】造物樂章(二)【何以學道】

【造物樂章】 【第二章】 【何以學道】 學習的道理不管是在怎樣的科別之上都脫不出一個道理,就是要用於嘗試,有許多人再學電腦的時候都會吝於嘗試,因為他怕把整個電腦搞砸了,這是人之常情,但當你真的想要學習電腦能做到的許多事情時,千萬部要吝惜於一再嘗試,因為嘗試是學習最好的方法。事實上,電腦並不如一般人所想像的難以駕馭,殊不知有許多電腦操作十分強的人都不是資訊本科系出身,而這邊就要好好解釋資訊與電腦的差別。 所謂的資訊是學習如何架構出電腦內部功能的學問,而學電腦則是偏重於操作方面的一些技巧,這邊要很明白的點出一項事實,學資訊的人並不是最好的電腦維修或者電腦教學工程師,很多人一旦電腦有問題就會去找身旁的一些好友,看誰是資訊科系的、誰常常玩電腦、誰有在電腦商店打工,其實這種想法是不對的,該有的觀念是要先重複檢查是否自己曾經有什麼自己能力能夠檢查的東西被忽略掉了,若是沒有則該找找你原來買電腦的店面要其維修,而不是隨便找個好朋友來維修,對於資訊本科的人而言,維修電腦的課程可以說幾乎沒有,所以對於一些電腦維修以及電腦型號的研究也都是零,所以當你將電腦推給這些人,實際上是將一個大難題推給他,當然要是他了解這方面問題的解決方法,確實是可以幫你,要是他對於這方面全無經驗那就要由他找尋許多資料來為你解決,絕對是事倍功半,不過,其中的好處在於受委託的人會多學到一些東西,但是對於原委託人而言,他找到了一個不用錢的工程師,而且以後有不一樣的問題都可以找他,當然,被委託人只好自認倒楣,至於委託人自己,一絲絲的經驗也沒學到,以後還是會遇到同樣的問題,所以問題是可以分類的,若你是想要學習如何處理一些問題,那就找個好朋友教你,他絕對不為吝惜的,但是若只是要解決問題,不見得要學到解決問題的方法,那還是建議你去找一般電腦門市的維修部門比較適當。 自我學習的過程中,有一點是很重要的,就是學會自己找到答案,最直接的方法就是看書,有許多問題的答案都在書本裡面,只是願意去看書的人並不多,很多人都希望經驗與之是能夠突然間出現在腦海裡而不用花費任何精力,但現實十分明白地指出這是不可能的,有付出才能有收穫是決對千古不變的,看書能夠讓你知道哪邊可以找到答案,能找到答案也就能訓練自己自我思考出答案,有很多問題都是你願意去試就能自己解決的,例如怎麼去設定Word裡的字型,你只要看著螢幕上的中文字(不要說你看不懂中文字)便可以自己試出來,不太可能將電腦弄壞,萬一弄壞了也就是你倒楣了,這時只好參考我上一段文章的建議尋求幫助了,回到原來的焦點,有很多東西是可以自己嘗試出來的,不一定非事事去求別人,也有許多解答是藏在已經有人整理出來的書裡面,只要你願意去看就可以解決。很多人都會問什麼書比較好?其實並沒有一定的原則去判斷憂劣,你到書局翻一翻,覺得順眼、覺得裡面寫的東西是你需要的、覺得是看得懂的就是你要的書,我強烈建議對於電腦有興趣的人好好找一本Windows系列的書來看一看,絕對有助於你對一些基本東西的了解,對基本的東西都不了解的話,就沒有進一步學更多東西的必要,這邊強調一下,儘量不要將買回來的書當成裝飾品或者枕頭。 曾有一位朋友分析過世界上成功人士的兩種背景,我絕得很有道理,一種是十分用功的人,一種是十分聰明的人,不可否認地,有些人只要告他的聰明就能成功、快速地學得許多東西,但若你並不聰明也沒關係,只要努力就能獲得比那些聰明的人更多的東西,不管你是哪一種人,你都會發現,嘗試是十分重要的事,不管你多聰明,不去嘗試就什麼都不會,而當你學習電腦的東西有進一步的成果之後,你會發現在整個資訊世界中很需要一項特質,就是要能冷靜地思考,能冷靜思考才能養成一種推理的能力,也才能在你的腦子裡自己想出可能的解決方法。 很多人在學習電腦的路上會有千百的疑問,但是有疑問時,大部分的處理方法就是放在一邊讓他過去,我強烈不贊同這種方式,這種方式會讓你久而久之失去處理相關情況的能力,有問題就要試著解決,就要設法去『問』,而問問題有其技巧,不是隨便問的,根據你問問題的態度與方法會決定對方是否樂於幫你解決問題,舉例來說,當你的印表機印不出東西時,最不經過大腦的問法是『印表機印不出來要怎麼辦?』,這種問法我也沒辦法解答,自然也會不太想去回答這個不經過大腦的問法,我一般的解答是用『換一台』來敷衍你,那麼,該如何問才能讓對方感受到你的誠意呢?你必須讓對方覺得你已經自己去嘗試過了,真的不行才來求教,而不是完全依賴他來解決你『所有』的問題,例如你有去查閱印表機的使用手冊(很多人可能手冊放哪都不知道)然後自己試過,並把印表機型號、你處理過哪些動作、你的印表機有什麼問題都告訴對方,那對方就可以思考可能是什麼問題,或者建議你去查什麼資料、作什麼動作、問什麼人,當他覺得需要親自幫你看看的時候自然會幫你看,若你發現你有什麼問題會義不容辭地直接跑到你家幫你修電腦,那他的時間一定會被許許多多的問題所壓榨,完全沒有自己的時間,一般這樣的都是有比較深入研究一些問題的初學者,比較有經驗的人都知道要如何讓你自己解決自己的問題,而不是把問題無限期地留給自己。 最後要提到一個真的是不錯的學習方式,就是許多人進入電腦世界的原因─玩遊戲,當你對某個遊戲很有興趣,你自然會設法讓你的電腦隨時保持穩定,並養成自己解決問題的能力,因為與其等別人來修還不如自己先試試看,可以縮短故障時間,讓你繼續玩你想玩的東西;另外也有一條路,就是上網,當你無法上網一定會十分急迫地要修好,若是交給非專業的工程師一定會拖慢修好電腦的時間,還不如自己試試看,打電話問問別人自己可以先做什麼事情,當然,若還是不行,當然就會建議你去找一般的電腦維修專家,可能會多花點錢,但是縮短了處理時間,當然,把電腦搬給別人修一定是最後才做的方式,能夠自己解決一次問題舊有希望解決第二次問題,有一天也可以成為讓別人問問題的人。 問問題除了有問問題的技巧,也要知道哪個問題該問誰,當你買了個新電腦卻不會動就不應該問你朋友,而是要問電腦公司,若是你安裝了什麼東西不會動就要問一下誰有經驗,而不是千篇一律的去問某一個人,要是對軟體的使用方法有疑問,則我的建議是先找書再找人,這就好像在問『Office要怎麼用』一樣沒有禮貌,明明就有書可以查,卻要叫別人把書的內容背給你聽,甚至對方還根本沒用過那個軟體卻要為了你去學他(該軟體對對方來說可能完全沒用),另外,要為各位建立一個常識,就是一般軟體都會有附上直接查詢的線上使用手冊,可以直接按F1去查許多東西,根本就不必問別人,千萬不要有的想法是,我懶得去看,所以我完全不看,要等你找不到答案時才去問別人,哪別人才可以引導你去找到你要的東西,我經常的做法便是直接在電話或E-Mail裡告訴對方哪裡可以查到資料,如何可以查到資料,也就是教大家如何用釣竿,而不是直接丟魚給你吃,這才是對大家有益的教學方法。 不知不覺已經三千字了,關於這個主題事實上還有很多東西可以發揮,但畢竟時間有限,我無法再寫太多東西,其他的部分就看你自己去發掘、去尋找,有問題當然可以問我,我會十分樂意為你講解解決方法的,再強調一次,自我嚐試、正確發問以及正確找到解答者是解決問題的不二法門。 凡塵中華民國九十一年三月三日下午五時整

如何在CentOS 7安裝一套完整的LAMP服務 第二章 MariaDB安裝

MariaDB是MySQL原始團隊在MySQL被Oracle併購之後自行開發的相容系統,嚴格來說只是初期相容,在比較新的版本已經開始分道揚鑣了,但基本的指令還是相容的。 安裝MariaDB 首先要安裝MariaDB的Repository,方法就是新增一個Repo檔案,目錄與檔名為 /etc/yum.repos.d/MariaDB.repo,內容如下 name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 儲存之後就可以執行以下指令安裝 sudo yum install MariaDB-server MariaDB-client 如果看到下面的畫面就可以按"y"完成安裝 安裝完成後一樣將MariaDB設定為開機自動啟動並將服務啟動好。 systemctl enable mariadb systemctl start mariadb 設定檔 裝好之後會有以下的設定檔案出現 /etc/my.cnf /etc/my.cnf.d/mysql-clients.cnf /etc/my.cnf.d/enable_encryption.preset /etc/my.cnf.d/server.cnf <== 主要伺服器設定 /etc/my.cnf.d/tokudb.cnf /etc/my.cnf.d/client.cnf 原則上,直接用就好,不要亂改 在實務上比較可能會設定的幾個參數都是放在/etc/my.cnf.d/server.cnf,以下列出給大家參考,主要都是放在這個區域 #query_cache_type=1   <== 啟用快取 #query_cache_size=64000000  <== 快取的大小 #query_cache_limit=32000000  <== 進入快取的最小限制 long_query_time=1  <== 存取時間超過一秒的舊儲存到slow query log,這邊的1是指1秒,預設為10秒,初期調校系統可以設成1秒,將執行比較緩慢的指令都挑出來 slow-query-log=1  <== 啟用slow query log slow-query-log-file=/var/log/mariadb/slow-query.log  <== slow...