亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁 科技周邊 IT業(yè)界 更快地制作Magento 2網站的7種簡單方法

更快地制作Magento 2網站的7種簡單方法

Feb 08, 2025 am 10:49 AM

7 Easy Ways to Make a Magento 2 Website Faster

Magento 2電商平臺因其速度問題而飽受詬病,緩慢的商品目錄頁面和反應遲鈍的結賬流程是常見問題。本文將分享七個實用技巧,助您提升Magento 2在線商店的運行速度。

1. 使用Varnish作為緩存應用

Varnish是一款HTTP代理服務器,可緩存內容,安裝在Web服務器前面可顯著提升網站性能。 Magento 2內置支持Varnish。啟用方式如下:

  1. 進入管理面板 > 商店 > 配置 > 高級 > 系統(tǒng) > 全頁緩存,并將“緩存應用程序”設置為Varnish Cache。

    7 Easy Ways to Make a Magento 2 Website Faster

  2. 展開Varnish配置選項卡,導出VCL文件。

    7 Easy Ways to Make a Magento 2 Website Faster

將此文件交給您的系統(tǒng)管理員或主機支持團隊進行Varnish守護進程配置。

2. 安裝緩存預熱工具

Magento 2使用全頁緩存(FPC)來降低服務器響應時間,但FPC的首次請求通常較慢。緩存預熱工具(腳本或擴展)可以預先發(fā)出這些請求,填充緩存存儲,從而縮短首字節(jié)時間(TTFB)。您可以安裝Magento 2模塊(付費或免費)作為緩存預熱工具,或者創(chuàng)建簡單的PHP腳本,預熱所有類別和最受歡迎的頁面:

ini_set('memory_limit','12000M');
use Magento\Framework\App\Bootstrap;
require __DIR__.'/app/bootstrap.php';
$params = $_SERVER;
$bootstrap = Bootstrap::create(BP,$params);
$obj = $bootstrap->getObjectManager();
$state = $obj->get('Magento\Framework\App\State');
$state->setAreaCode('frontend');
$categories = $obj->create('Magento\Catalog\Model\ResourceModel\Category\Collection');
$categories->addIsActiveFilter()
           ->joinUrlRewrite();
foreach($categories as $cat){
   $st = microtime(true);
   $dd = file_get_contents_ssl($cat->getUrl());
   $fn = microtime(true);
   if(($fn - $st) > 0.9)
    echo $cat->getUrl()." : time: ".($fn - $st)."\n";
   sleep(3);
}
$open = fopen("1000-popular-pages.csv","r");
while(($data = fgetcsv($open,4000,",")) !== FALSE){
    if(filter_var($data[0],FILTER_VALIDATE_URL) !== FALSE && strpos($data[0],".pdf") === FALSE && strpos($data[0],"/blog/") === FALSE){
      $st = microtime(true);
      $dd = file_get_contents_ssl($data[0]);
      $fn = microtime(true);
      if(($fn - $st) > 0.9)
       echo $data[0]." : time: ".($fn - $st)."\n";
      sleep(3); 
    }
}
fclose($open);

function file_get_contents_ssl($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_REFERER, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3000); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 10000); 
    $result = curl_exec($ch);
    if($result === FALSE)
       $result = curl_error($ch);
    curl_close($ch);
    return $result;
}

您可以從Google Analytics導出熱門頁面列表。

3. 將JavaScript代碼移至頁面底部

將JavaScript代碼移至頁面底部可以改善首屏內容繪制速度。 Magento 2.4 提供了相應的管理設置,或者使用命令行:

php bin/magento config:set  dev/js/move_script_to_bottom 1
php bin/magento cache:flush

4. 將圖片轉換為WebP格式

WebP圖片比JPEG和PNG占用更少的磁盤空間。將網站圖片轉換為WebP格式可以減小頁面大小,提升性能??梢允褂?code>cwebp命令行工具進行轉換:

cwebp -q 80 image.png image.webp

-q參數設置質量,此處為80)。 Magento 2也有一些模塊可以實現此轉換。

5. 啟用HTML壓縮

HTML壓縮有助于減小頁面大小和提升速度。 Magento 2.4 無需額外模塊即可壓縮HTML。啟用方式:

php bin/magento config:set dev/template/minify_html 1
php bin/magento deploy:mode:set production

6. 壓縮和合并JavaScript和CSS文件

壓縮和合并JS和CSS文件有助于減小頁面大小,減少HTTP請求,從而加快網站速度。啟用方式:

php bin/magento config:set dev/js/merge_files 1
php bin/magento config:set dev/css/merge_css_files 1
php bin/magento config:set dev/js/minify_files 1
php bin/magento config:set dev/css/minify_files 1
php bin/magento deploy:mode:set production

7. 緩存ElasticSearch查詢結果

Magento 2.4 使用ElasticSearch引擎進行索引和目錄管理。對于大型目錄,緩存查詢結果可以提高ElasticSearch性能。打開vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php文件,在約365行附近添加以下代碼:

ini_set('memory_limit','12000M');
use Magento\Framework\App\Bootstrap;
require __DIR__.'/app/bootstrap.php';
$params = $_SERVER;
$bootstrap = Bootstrap::create(BP,$params);
$obj = $bootstrap->getObjectManager();
$state = $obj->get('Magento\Framework\App\State');
$state->setAreaCode('frontend');
$categories = $obj->create('Magento\Catalog\Model\ResourceModel\Category\Collection');
$categories->addIsActiveFilter()
           ->joinUrlRewrite();
foreach($categories as $cat){
   $st = microtime(true);
   $dd = file_get_contents_ssl($cat->getUrl());
   $fn = microtime(true);
   if(($fn - $st) > 0.9)
    echo $cat->getUrl()." : time: ".($fn - $st)."\n";
   sleep(3);
}
$open = fopen("1000-popular-pages.csv","r");
while(($data = fgetcsv($open,4000,",")) !== FALSE){
    if(filter_var($data[0],FILTER_VALIDATE_URL) !== FALSE && strpos($data[0],".pdf") === FALSE && strpos($data[0],"/blog/") === FALSE){
      $st = microtime(true);
      $dd = file_get_contents_ssl($data[0]);
      $fn = microtime(true);
      if(($fn - $st) > 0.9)
       echo $data[0]." : time: ".($fn - $st)."\n";
      sleep(3); 
    }
}
fclose($open);

function file_get_contents_ssl($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_REFERER, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3000); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 10000); 
    $result = curl_exec($ch);
    if($result === FALSE)
       $result = curl_error($ch);
    curl_close($ch);
    return $result;
}

這將啟用ElasticSearch內部查詢緩存機制。

總結

本文介紹了七種提升Magento 2網站速度的方法:使用Varnish作為全頁緩存、設置緩存預熱工具、延遲加載JavaScript、將所有圖片轉換為WebP、啟用HTML壓縮、壓縮和合并JS和CSS文件以及緩存ElasticSearch查詢結果。這些步驟將改善服務器響應時間和核心網絡指標。

以上是更快地制作Magento 2網站的7種簡單方法的詳細內容。更多信息請關注PHP中文網其他相關文章!

本站聲明
本文內容由網友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現有涉嫌抄襲侵權的內容,請聯系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

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集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

新研究聲稱AI比我們更好地'理解”情緒。特別是在情感上充滿電的情況下 新研究聲稱AI比我們更好地'理解”情緒。特別是在情感上充滿電的情況下 Jul 03, 2025 pm 05:48 PM

在我們認為人類始終超越機器的領域的另一個挫折中,研究人員現在建議AI比我們更好地理解情感。研究人員發(fā)現人工智能證明了一個

您的設備喂養(yǎng)AI助手并收集個人數據,即使他們睡著了。這是如何知道您分享的內容。 您的設備喂養(yǎng)AI助手并收集個人數據,即使他們睡著了。這是如何知道您分享的內容。 Jul 05, 2025 am 01:12 AM

不管喜歡與否,人工智能已成為日常生活的一部分。許多設備(包括電動剃須刀和牙刷)已成為AI驅動的“使用機器學習算法來跟蹤一個人的使用方式,Devi的方式

由于新的Microsoft AI型號 由于新的Microsoft AI型號 Jul 05, 2025 am 12:44 AM

一種新的人工智能(AI)模型已經證明了比幾個使用最廣泛使用的全球預測系統(tǒng)更快,更精確地預測重大天氣事件的能力。該名為Aurora的模型已接受過培訓。

高級AI型號的CO₂回答相同問題時的排放量比更常見的LLM 高級AI型號的CO₂回答相同問題時的排放量比更常見的LLM Jul 06, 2025 am 12:37 AM

根據最近的一項研究,我們試圖使AI模型的功能越精確,其碳排放量就越大 - 某些提示產生的二氧化碳比其他提示高達50倍。

威脅AI聊天機器人,它將撒謊,作弊和'讓您死”以阻止您,并警告 威脅AI聊天機器人,它將撒謊,作弊和'讓您死”以阻止您,并警告 Jul 04, 2025 am 12:40 AM

根據一項新的研究,人工智能(AI)模型在模型的目標和用戶決定之間發(fā)生沖突時可能會威脅和勒索人類。

ai不斷地'幻覺”,但是有一個解決方案 ai不斷地'幻覺”,但是有一個解決方案 Jul 07, 2025 am 01:26 AM

大型技術實驗人工智能(AI)的主要關注點并不是它可能主導人類。真正的問題在于大語言模型(LLMS)的持續(xù)不準確性,例如Open AI的Chatgpt,Google的Gemini和

為什么AI會更頻繁地進行Hallucin,我們如何停止它? 為什么AI會更頻繁地進行Hallucin,我們如何停止它? Jul 08, 2025 am 01:44 AM

人工智能(AI)越先進,它越傾向于“幻覺”并提供虛假或不準確的信息。Openai的研究是其最新和強大的推理模型(O3和O4-Mini)的研究,這對HH進行了研究。

See all articles