目錄
話雖如此……
何時選擇靜態網站……
何時選擇服務器端軟件……
選擇靜態網站的錯誤理由……
選擇服務器端軟件的錯誤理由……
首頁 web前端 css教學 是否靜態?

是否靜態?

Apr 07, 2025 am 10:31 AM

Static or Not?

靜態網站生成器?我為什麼不用? Kev Quirk 的簡短評論:Kev 使用WordPress:

想在iPad 上寫博客?沒問題。想在手機上寫?也可以。在我不常用機器上寫?只要有瀏覽器,一樣沒問題。

首先,值得一提的是,使用WordPress 並不意味著你不能使用靜態網站生成器。 WordPress 有一個API,這使得在構建過程中調用API 來構建你的網站成為可能。 Gatsby 就是這麼做的,它有一個導出靜態網站的插件,而像Frontity 這樣的項目則模糊了界限。

但我同意Kev 的理由。基於他的所有理由,以及其他無數理由,運行一個WordPress 網站是一個完全可以接受的,而且通常是明智的選擇。我認為這關乎健壯性和功能的完備性。需要電子商務功能? WordPress 有。需要表單?有很多優秀的插件。需要增強CMS 的功能?你可以控制內容類型及其內容。需要身份驗證?這是核心功能。想要出色的編輯體驗? Gutenberg 棒極了。

一次又一次,我快速高效地用WordPress 構建我想要的東西,這讓我感覺高效且強大。但我不想特別談論WordPress;這同樣適用於任何“經典”CMS。 Craft CMS 原生就具有GraphQL API。我們剛剛發布了一個關於Drupal Jamstack 網絡研討會的帖子。

在相對較新的靜態網站世界中,一件小事最終可能變成一段漫長的研究和實施過程,感覺就像你是地球上唯一一個這麼做的人。

話雖如此……

我對靜態網站生成器和Jamstack 世界的看法如何?它們很棒

我認為以這種方式構建網站有很多好處。數據和前端的分離很明智。安全性很高。開發人員體驗也很好,部署預覽和基於Git 的一切都很棒。啟動速度驚人(從CDN 提供HTML 服務是一項壯舉)。

就像經典的服務器端CMS 不會阻止你構建靜態網站一樣,使用靜態網站也不會阻止你做動態的事情——甚至是超級高級的動態事情。 Josh Comeau 有一篇很棒的新文章深入探討了這一點。他構建了一個在瀏覽器中使用React 完成大量工作的漂亮小應用程序,但這並不意味著他仍然不能靜態地提供大部分內容。他稱之為“思維方式的轉變”,指的是你可能認為你需要數據庫調用,但你真的需要嗎?數據庫調用是否已經發生並生成了一個靜態文件?如果沒有,那麼仍然可以靜態生成一部分內容,剩下的部分動態獲取。

我期待著一個世界,在這個世界裡,我們開始真正看到兩全其美。我們盡可能多地靜態生成內容,通過API 獲取我們無法靜態生成的內容,並且在整個過程中不會犧牲最佳工具。

何時選擇靜態網站……

  • 如果你可以,你應該考慮一下,因為它的速度和安全性無與倫比。
  • 如果你正在處理一個Greenfield 項目。
  • 如果你的項目構建自並使用可訪問的API,你可以在構建過程中調用該API,以及在初始HTML 加載後使用它。
  • 如果某個靜態網站生成器看起來非常適合你正在做的事情。
  • 如果成本分析表明它更便宜。
  • 如果某些功能(如構建預覽)對工作流程非常有幫助。

何時選擇服務器端軟件……

  • 如果你需要經典CMS(例如WordPress)的功能,並且從那裡轉向靜態的的技術債務太高。
  • 如果你已經深入參與了一個服務器端渲染項目(Ruby on Rails、Python 等),並且沒有遇到任何現有問題。
  • 如果你團隊在該領域擁有最多的專業知識。
  • 如果成本分析表明它更便宜。
  • 如果沒有針對你想要構建的內容的好的靜態解決方案(例如論壇軟件)。
  • 如果你遇到極端情況,例如數百萬個URL,並且靜態構建時間太長。

選擇靜態網站的錯誤理由……

  • 你需要使用服務器。 (為什麼?你仍然可以在構建時或運行時調用服務器上的API。)
  • 你需要身份驗證。 (為什麼?Jamstack 可以通過JWT 等完美地實現身份驗證。)
  • 你甚至都沒有考慮過Jamstack 方式。

選擇服務器端軟件的錯誤理由……

  • 你甚至都沒有考慮過Jamstack 方式。
  • 因為你認為使用舒適/現有/經典/成熟/受支持良好的工具會阻止你靜態構建任何內容。
  • SEO 之類的問題。 (如果有什麼不同的話,靜態渲染的內容應該表現更好。但是,如果轉向靜態意味著轉向客戶端調用來獲取產品數據等內容,這是可以理解的。)

以上是是否靜態?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
Google字體可變字體 Google字體可變字體 Apr 09, 2025 am 10:42 AM

我看到Google字體推出了新設計(Tweet)。與上一次大型重新設計相比,這感覺更加迭代。我幾乎無法分辨出區別

如何使用HTML,CSS和JavaScript創建動畫倒計時計時器 如何使用HTML,CSS和JavaScript創建動畫倒計時計時器 Apr 11, 2025 am 11:29 AM

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

HTML數據屬性指南 HTML數據屬性指南 Apr 11, 2025 am 11:50 AM

您想了解的有關HTML,CSS和JavaScript中數據屬性的所有信息。

如何通過CSS選擇第一個類名為item的子元素? 如何通過CSS選擇第一個類名為item的子元素? Apr 05, 2025 pm 11:24 PM

在元素個數不固定的情況下如何通過CSS選擇第一個指定類名的子元素在處理HTML結構時,常常會遇到元素個數不�...

為什麼Flex佈局中的紫色斜線區域會被誤認為是'溢出空間”? 為什麼Flex佈局中的紫色斜線區域會被誤認為是'溢出空間”? Apr 05, 2025 pm 05:51 PM

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

使Sass更快的概念證明 使Sass更快的概念證明 Apr 16, 2025 am 10:38 AM

在一個新項目開始時,Sass彙編發生在眼睛的眨眼中。感覺很棒,尤其是當它與browsersync配對時,它重新加載

在前端開發中,如何使用CSS和JavaScript實現類似Windows 10設置界面的探照燈效果? 在前端開發中,如何使用CSS和JavaScript實現類似Windows 10設置界面的探照燈效果? Apr 05, 2025 pm 10:21 PM

在前端開發中如何實現類似Windows...

我們如何創建一個在SVG中生成格子呢模式的靜態站點 我們如何創建一個在SVG中生成格子呢模式的靜態站點 Apr 09, 2025 am 11:29 AM

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tar​​tanify.com上,我們收集了5,000多個格子呢

See all articles