Nginx Yüklü Değil ise Bu Bölümden Yükleyebilirsiniz
Ön koşulları kurun:
sudo apt install curl gnupg2 ca-certificates lsb-release
Soru sorar ise Y yazıp ENTER’a basın.
Kararlı Nginx paketleri için apt deposunu kurmak için aşağıdaki komutu çalıştırın:
echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list
Ardından, apt’nin paketlerin gerçekliğini doğrulayabilmesi için resmi bir nginx imzalama anahtarını içe aktarın:
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -
Şimdi doğru anahtara sahip olduğunuzu doğrulayın:
sudo apt-key fingerprint ABF5BD827BD9BF62
Çıktı, aşağıdaki gibi tam parmak izi 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 içermelidir:
pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62
uid [ unknown] nginx signing key signing-key@nginx.com
Nginx’i kurmak için aşağıdaki komutları çalıştırın:
sudo apt update
sudo apt install nginx -y
Nginx Yüklü ise Bu Bölümden PageSpeed Kurulumuna Geçebilirsiniz
NGINX’in en son kararlı sürümü üzerinde çalışmak üzere test edildi. Bunu ilk kez derliyorsanız, kodları adım adım çalıştırabilirsiniz.
Halihazırda kurulu NGINX sürümünün otomatik olarak algılanması için şunu kullanın:
ngver=$(nginx -v 2>&1 | grep -o '[0-9\.]*')
NGINX modülleri dizinini otomatik olarak seçmek için.
[ -d /usr/share/nginx/modules ] && moddir=/usr/share/nginx/modules
[ -d $(nginx -V 2>&1 | grep -o 'prefix=[^ ]*' | sed 's/prefix=//')/modules ] && moddir=$(nginx -V 2>&1 | grep -o 'prefix=[^ ]*' | sed 's/prefix=//')/modules
[ -d $(nginx -V 2>&1 | grep -o 'modules-path=[^ ]*' | sed 's/modules-path=//') ] && moddir=$(nginx -V 2>&1 | grep -o 'modules-path=[^ ]*' | sed 's/modules-path=//')
[ $moddir ]
Geçici dizin ayarlayın ve dizine gidin.
builddir=$(mktemp -d)
cd ${builddir}
PageSpeed tarafından sağlanan komutu kullanın.
nice -n 19 ionice -c 3 bash <(curl -f -L -sS https://ngxpagespeed.com/install) -n ${ngver} -m -b ${builddir} -a '--with-compat' -y
ngx_pagespeed.so ile değiştirin, yoksa kopyalayın.
[ -f ${moddir}/ngx_pagespeed.so ] && sudo mv ${moddir}/ngx_pagespeed.so ${moddir}/ngx_pagespeed.so.old
sudo chmod 644 /usr/local/nginx/modules/ngx_pagespeed.so
sudo cp /usr/local/nginx/modules/ngx_pagespeed.so ${moddir}/
Derleme dosyalarını temizleyin
cd ${builddir}/..
sudo rm -r /usr/local/nginx
rm -r ${builddir}
NGINX’i yeniden başlatın.
sudo nginx -t && { systemctl is-active nginx && sudo systemctl restart nginx || sudo systemctl start nginx; } || true
systemctl --no-pager status nginx
sudo nano /etc/nginx/nginx.conf
komutu ile nano editörde nginx.conf dosyasını açın.
load_module modules/ngx_pagespeed.so;
satırını dosyanın en üstüne ekleyin. CTRL + X tuşlarına basın. Y tuşuna basın ve ENTER tuşuna basın.
sudo service nginx reload
Nginx modülü kurulmuş ve aktif edilmiştir.
etc/nginx/sites-enable/ klasöründeki ayar dosyanızda server { altına aşağıdaki parametleri ekleyebilirsiniz.
pagespeed on;
# Other settings
pagespeed HonorCsp on;
pagespeed PreserveUrlRelativity on;
pagespeed DisableRewriteOnNoTransform off;
pagespeed AllowVaryOn Auto;
pagespeed RespectVary on;
pagespeed XHeaderValue "maj_ngx_pagespeed";
# Filters
pagespeed RewriteLevel CoreFilters;
pagespeed EnableFilters insert_dns_prefetch;
pagespeed EnableFilters hint_preload_subresources;
pagespeed EnableFilters trim_urls;
pagespeed EnableFilters combine_heads;
pagespeed EnableFilters move_css_to_head;
pagespeed EnableFilters move_css_above_scripts;
pagespeed EnableFilters rewrite_style_attributes;
pagespeed EnableFilters outline_css;
pagespeed EnableFilters outline_javascript;
pagespeed EnableFilters jpeg_subsampling;
pagespeed EnableFilters convert_to_webp_animated;
pagespeed EnableFilters lazyload_images;
# Default PageSpeed location blocks
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; }
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }
etc/nginx/nginx.conf dosyasında http { altına aşağıdaki nginx parametrelerini ekleyebilirsiniz.
# Cache
pagespeed FileCachePath /var/ngx_pagespeed_cache;
pagespeed EnableCachePurge on;
pagespeed FileCacheSizeKb 9437184;
pagespeed FileCacheCleanIntervalMs 86400000;
pagespeed FileCacheInodeLimit 1000000;
# Enable Admin Pages
pagespeed StatisticsPath /ngx_pagespeed_statistics;
pagespeed GlobalStatisticsPath /ngx_pagespeed_global_statistics;
pagespeed MessagesPath /ngx_pagespeed_message;
pagespeed ConsolePath /pagespeed_console;
pagespeed AdminPath /pagespeed_admin;
pagespeed GlobalAdminPath /pagespeed_global_admin;
# Enable stats
pagespeed Statistics on;
pagespeed StatisticsLogging on;
pagespeed LogDir /var/log/pagespeed;
pagespeed MessageBufferSize 100000;
Kaynak:
https://www.majlovesreg.one/adding-pagespeed-to-a-running-nginx-instance