میخواستم اگه توضیحاتی در این مورد دارین بهم بدین ممنون میشم که توضیح بدین که چگونه اندازه صفحه را در وب سایت Odoo و Backend با استفاده از Gzip با NGINX کاهش دهیم؟
1 پاسخ
اودوو ویراوب ۱۲۳ یکی از برجسته ترین و قابل اعتمادترین راه حل های ERP در عصر مدرن است. این دارای طیف گسترده ای از ویژگی ها و یک جامعه قوی است. یکی از بزرگترین مزایای اودوو ویراوب ۱۲۳ در مقایسه با سایر راه حل های ERP این است که دارای یک وب سایت داخلی و راه حل تجارت الکترونیک است که راه اندازی و استقرار آن آسان است. داشتن تمام ویژگیهای حسابداری، موجودی و اشتراک یکپارچه با وبسایت، اودوو ویراوب ۱۲۳ را نه تنها یک راهحل عالی ERP، بلکه یک راهحل مناسب تجارت الکترونیک نیز میسازد.
شرکت های زیادی در سرتاسر جهان از ماژول تجارت الکترونیک اودوو ویراوب ۱۲۳ به عنوان پلت فرم فروش اصلی خود استفاده می کنند. برای یک شرکت تجارت الکترونیک، نکات کلیدی فروش آنها سرعت، قابلیت اطمینان و تجربه کاربری از پلتفرمشان است. با این حال، در برخی موارد، تجارت الکترونیک اودوو ویراوب ۱۲۳ به عنوان یک راه حل کند عملکرد با تجربه کاربری عالی مورد سرزنش قرار گرفته است. اگر منصف باشیم، بیشتر شکایات به دلیل اشتباهات در پیکربندی اودوو ویراوب ۱۲۳ است. پس از پیکربندی صحیح، تجارت الکترونیک اودوو ویراوب ۱۲۳ با محبوب ترین و تخصصی ترین راه حل های تجارت الکترونیک مانند Woocommerce و Shopify رقابت می کند. در این وبلاگ، یکی از سادهترین راهها برای بهینهسازی اودوو ویراوب ۱۲۳ از نظر اندازه صفحه و تأخیر، یعنی فشردهسازی محتوای HTTP را مورد بحث قرار میدهیم.
بنابراین، اگر محتوا فشرده شده باشد، کاربر چگونه می تواند محتوا را ببیند یا با آن تعامل داشته باشد؟ یکی از بزرگترین مزایای فشرده سازی Gzip این است که توسط 99٪ مرورگرهای مدرن پشتیبانی می شود، از جمله، اما نه محدود به موارد زیر:
الف) کروم (همه نسخه ها)
ب) فایرفاکس 0.9.5 و نسخه های بالاتر
ج) سافاری (همه نسخه ها)
د) مایکروسافت اج (همه نسخه ها)
Gzip ابزار محبوبی است که برای فشردهسازی و ارائه محتوای HTTP از طریق اینترنت استفاده میشود. این محتوا را طبق تنظیمات ارائه شده در سرور فشرده می کند. از آنجایی که محتوا را فشرده می کند، پهنای باند و زمان مورد استفاده برای ارائه محتوا بسیار کمتر از روش معمولی است. بسته های داده کوچک سریعتر می رسند و در واقع تأخیر را کاهش می دهند. در این وبلاگ، Gzip را با یکی از سرورهای پراکسی معکوس محبوب و توصیه شده (برای Odoo) یعنی NGINX پیکربندی خواهیم کرد. بیایید نگاهی بیندازیم که چگونه می توانیم فشرده سازی Gzip را در NGINX روشن کنیم.
برای روشن کردن فشردهسازی Gzip، باید تنظیمات زیر را در بلوک سرور فایل NGINX انجام دهید (میتوانید آن را در فایل /etc/nginx/nginx.conf و همچنین در فایلهای/etc/nginx/sites قرار دهید. -enabled یا /etc/conf.d/nginx).
gzip on;
این به Nginx اجازه می دهد تا محتوای ارسال شده را با تنظیمات پیش فرض فشرده کند. بیایید ببینیم چه پیکربندیهای رایجی را میتوانیم برای تغییر نحوه فشردهسازی محتوا مشخص کنیم.
انواع Gzip
پارامتر gzip_types برای تعیین نوع محتوای مورد نیاز برای فشرده سازی استفاده می شود. ما می توانیم تمام انواع محتوای رایج را مانند زیر مشخص کنیم
gzip_types text/css;
این پیکربندی فقط فایل های CSS را فشرده می کند. ما میتوانیم انواع محتوا مانند text/scss text/javascript و غیره را ارائه دهیم، اگر gzip_types ارائه نشود، NGINX با نوع محتوای متنی/html پاسخ میدهد که مطلوبترین پیکربندی برای Odoo در زیر است.
Gzip_types:
text/css
text/scss
text/plain
text/xml
application/xml
application/json
application/javascript
حداقل طول(اندازه) Gzip
دستور gzip_min_length برای تنظیم حداقل اندازه محتوا برای فشرده سازی استفاده می شود. به طور پیش فرض، مقدار 20 بایت است. می توانید با ارائه در مثال زیر آن را به روز کنید
gzip_min_length 1050;
در اینجا، ما کاری کردیم که NGINX تمام محتوا را با اندازه 1050 بایت یا بیشتر فشرده کند.
سطح فشرده سازی Gzip
دستورالعمل gzip_compression_level سطح فشرده سازی را تعریف می کند. مقادیر این دستورالعمل می تواند از 1 تا 9 متفاوت باشد که در آن 1 کمترین سطح فشرده سازی و 9 بیشترین سطح فشرده سازی است. به طور پیش فرض روی 6 تنظیم شده است. اما می توانیم با دنبال کردن مثال زیر آن را تغییر دهیم.
gzip_comp_level 7
به طور خلاصه، فشرده سازی gzip به کاهش اندازه صفحه وب سایت ها و بهبود کارایی آنها کمک می کند. برای اطلاعات بیشتر می توانید به https://docs.ngix.com مراجعه کنید.