Drupal 8'i amazon ile entegre etmek için S3 File System modülunu kullanabilirsiniz. Bu modül sayesinde Drupal sisteminizde bulunan tüm dosyaların veya istediğiniz file field'ların amazon tarafında barındırılmasını sağlayabilirsiniz. Tüm dosyaların amazon tarafında barındırılmasını istiyorsanız Drupal tarafından sıkıştırılan js ve css dosyaları da amazon tarafında barındırılacaktır. JS ve CSS dosyalarınız amazon tarafında barındırıldığı için sıkıştırma işlemleri yapamayacaksınız bunun sonucunda GTMetrix ve PageSpeed puanlarınız düşük çıkacaktır. Bunun için Drupal tarafından oluşturulmuş CSS ve JS dosyalarınızın sıkıştırılmış versiyonlarını kullanmanız gerekmektedir. Sistemde bulunan CSS ve JS dosyalarının sıkıştırılmış versiyonlarını yükleyebilmek için aşağıdaki kodu kullanmanız gerekmektedir.
function drupart_file_url_alter(&$uri) { if(strstr($uri,"public")==true && (strstr($uri,".js")==true || strstr($uri,".css")==true)){ $uri.=".gz"; } }
İlgili kod'un sonucunda GTMetrix ve Pagespeed puanlarınızda yükselme meydana gelecektir. Eğer bu işlem sonucunda site düzgün görüntülenmez ise aşağıdaki kodu kullanmanız gerekmektedir. Bu çalışmadan sonra siteniz düzgün ve daha da hızlı açılmaya başlayacaktır.
function drupart_s3fs_upload_params_alter(array &$upload_params) { if(isset($_SESSION['girdi_css'])){ $upload_params['ContentType'] = "text/css"; $upload_params['CacheControl'] = "max-age=3153600"; $upload_params['ContentEncoding'] = "gzip"; unset($_SESSION['girdi_css']); } elseif($upload_params['ContentType']=="text/css"){ $_SESSION['girdi_css'] = 1; } if(isset($_SESSION['girdi_js'])){ $upload_params['ContentType'] = "application/javascript; charset=utf-8"; $upload_params['CacheControl'] = "public, max-age=30672000"; $upload_params['ContentEncoding'] = "gzip"; unset($_SESSION['girdi_js']); } elseif($upload_params['ContentType']=="application/javascript"){ $_SESSION['girdi_js'] = 1; } }
GOSB Teknopark Hi-Tech Bina 3.Kat B3 Gebze - KOCAELİ