nginx vernik ve php-apc kullanarak WordPress optimizasyonu


Artık VPS, kişisel ve profesyonel web sitesi barındırma için geliştiriciler arasında popüler hale geldiğinden, herkes web sitesini hızlı ve güvenilir bir vps'de barındırmak istiyor. Hiç şüphe yok ki, daha hızlı ve tamamen özelleştirilebilir bir vps destekli web sitesine sahip olmayı düşündünüz. Ancak sunucu yönetimi ve yazılım yapılandırmaları hakkında bilgi eksikliği, bazı insanlar için en büyük engeldir. Bu gönderi, bir wordpress sitesini barındırmak için vps yapılandırması ve yönetimi için bir kılavuz sağlama çabasıdır. İçeriğin çoğu geneldir ve vps'de barındırılan herhangi bir web sitesinin optimizasyonu için kullanılabilir. ssh üzerinden root girişli ubuntu sunucusu için komutlar sağlayacağız.

Bir web sitesi barındırmak için ihtiyacınız olan şeyler –

  • Barındırma sunucusu
  • Alan adı
  • sunucu yazılımı
  • Web sitesi uygulaması
  • Veritabanı yazılımı

Farklı türde sunuculara sahip birkaç barındırma sağlayıcısı vardır. En popüler barındırma türü, paylaşılan barındırma, özel barındırma, bulut barındırma ve vps barındırmadır. Bu kılavuz için vps barındırma kullanacağız, çünkü vps bize sunucu üzerinde maksimum kontrol sağlar ve özel barındırmadan daha ekonomiktir. Herhangi bir vps barındırma sağlayıcısından vps alabilirsiniz, şahsen ben linode'u tercih ederim.

Alan adı, sitenizin url'sidir ve bir alan adı kayıt şirketinden kaydettirmeniz gerekir. Her ikisine de sahip olduğunuzda, alan adınızı vps'nize yönlendirmeniz gerekecektir. Bunu yapmanın iki yolu var. Birincisi, alan adı kayıt şirketi kontrol panelinin ad sunucusu yapılandırma bölümüne vps sağlayıcınızın ad sunucularını eklemektir. İkincisi, alan adı kayıt şirketi kontrol panelinin (A ve CNAME kayıtları) DNS yapılandırma bölümünde vps IP adresinizi yapılandırmak içindir. Bu kılavuzda ad sunucularının yapılandırılmasından ve DNS kayıtlarından bahsetmeyeceğiz. Genelde vps sağlayıcıların bu yapılandırmalar için belgeleri vardır ve uygun bir rehber bulamazsanız her zaman buradan bize sorabilirsiniz.

Şimdi, wordpress dağıtımı için sunucu yazılımını yükleme ve yapılandırmanın gerçek işine başlıyor. Web sunucumuz olarak nginx'i ve php betiklerini yürütmek için php-fpm'yi kullanacağız. Sunucunuzun terminaline aşağıdaki komutları yazın –

Yukarıdaki komutlar, nginx, php, mysql ve vernik dahil olmak üzere gerekli tüm yazılımları yükleyecektir. Şimdi aşağıdaki komutlarla wordpress kurulumu ve sunucu günlükleri için klasör oluşturun

/srv, /srv/www, /srv/www/public_html ve /srv/www/logs dizinleri oluşturun. WordPress'i indirin ve dosyaları public_html klasörüne kopyalayın

Şimdi mysql kök kullanıcısını kullanarak wordpress için bir veritabanı oluşturun. Kurulumunuza göre “password”, “mysite”, “user” ve “userpassword” kelimelerini değiştirin. Bu kelimeleri hatırla, çünkü wordpress kurulumu sırasında onlara ihtiyacımız olacak.

Artık her şey hazır olduğuna göre, wordpress sitemizi çalıştırmak için nginx ve php'yi yapılandıracağız. Nginx'i yapılandırmak için /etc/nginx/sites-available/ dizininde bir mysite dosyası oluşturmamız gerekecek. Bu dosyayı oluşturmak ve düzenlemek için aşağıdaki komutu kullanın

Bu komutu verdikten sonra terminalde bir editör göreceksiniz. Bu dosyayı düzenlemek için nano kullanıyoruz. Aşağıdaki içeriği kopyalayın ve terminalde tıklayın, ardından yeni oluşturulan dosyamıza kopyalamak için Ctrl+Shift+v tuşlarına basın

Yukarıdaki içeriği mysite dosyasına kopyaladıktan sonra, dosyayı kaydetmenizi isteyecek olan Ctrl+x tuşlarına basın, y tuşuna basın ve ardından girin. Şimdi sitelerin etkin olduğu klasörde dosyaya bağlantı oluşturun ve aşağıdaki komutları kullanarak nginx'i yeniden başlatın

y0! web tarayıcınız üzerinden wordpress yüklemeye hazırsınız. Şimdi site url'nizi web tarayıcısında açın. Karşınıza wordpress kurulum sayfası çıkacak. Bu sayfadaki talimatları izleyin ve yükleme işlemini tamamlayın. WordPress kurulum sayfasını göremiyorsanız, alan adınızın VPS'nizi gösterecek şekilde yapılandırıldığından emin olun ve günlük dosyalarında /var/log/nginx klasöründe herhangi bir hata olup olmadığını kontrol edin.

Şimdi wordpress kurulumunuzu optimize etmek için doğru araçları seçmeden önce göz önünde bulundurmanız gereken birkaç faktör var. Önbelleğe alınmış içeriği önbelleğe almak ve ziyaretçilere sunmak için kullanılabilecek farklı türde teknikler vardır. En etkili teknik, wordpress tarafından oluşturulan tüm html sayfasının statik bir dosya olarak önbelleğe alındığı tam sayfa önbelleği kullanmaktır. Diğer bir önbellek türü, işlem kodu önbelleği, veritabanı sorgu önbelleği ve nesne önbelleğini içerir. Opcode, bilgisayarda çalıştırılmak üzere php yorumlayıcı tarafından oluşturulan koddur, bir php betiğini her çalıştırdığımızda, yorumlayıcı bu opcode'u php kaynağından oluşturur ve çalıştırır. Bu işlem kodunu bilgisayarın RAM'inde önbelleğe alırsak, çok fazla CPU kullanımından tasarruf edebiliriz. Bu işlem kodunu önbelleğe almak için APC (alternatif php önbelleği) kullanıyoruz. Daha önce kurduk ve sadece çoğunu alacak şekilde yapılandırmamız gerekiyor. /etc/php5/conf.d adresine gidin ve aşağıdaki komutu kullanarak apc.ini adlı bir dosyayı düzenleyin ve aşağıdaki içeriği kopyalayıp dosyaya yapıştırın.

Kullanarak bu yapılandırmayı uygulamak için php'nizi yeniden başlatın

WordPress tarafından yapılan veritabanı sorgularını önbelleğe almak için kullanılabilen birkaç ücretsiz ve premium eklenti vardır. Bunun için db-cache-reloaded-fix kullanacağız. Bağlantıda verilen kurulum talimatını izleyin. Nginx sunucusunda wordpress'in kalıcı bağlantı özelliğini kullanmak için nginx uyumluluğu adlı başka bir wordpress eklentisi yüklemeniz gerekecektir. apc.ini dosyasında apc.shm_size'ı 40M olacak şekilde kullandık, bu da apc'nin wordpress php dosyalarının işlem kodunu önbelleğe almak için 40MB RAM kullanacağı anlamına geliyor. Tek bir wordpress kurulumu için yeterli olan. Aynı VPS'de birden fazla wordpress kuruluysa, buna göre artırabilirsiniz. VPS'nizde 1 GB'den fazla ram varsa, APC kullanarak wordpress nesnelerini önbelleğe almak için APC-nesne-önbellek-arka uç wordpress eklentisini kullanabilirsiniz. Ancak bunu yaparsanız, apc.ini dosyasındaki apc.shm_size değerini artırmayı unutmayın, değer artışı sitenin içerik boyutuna ve web sitesinin trafik davranışına bağlıdır, ancak genellikle başlangıç ​​için bu değeri 16 MB artırabilirsiniz. ve sonra buna göre optimize edebilirsiniz. Lütfen unutmayın, web sitenizin hata günlük dosyası /srv/www/logs/error.log'da “bellek tahsis edemiyor…” hatası görürseniz, bu, gerekirse apc.shm_size ve RAM boyutunuzu artırmanız gerektiği anlamına gelir. Ne yaptığınızı bilmiyorsanız bu eklentiyi kullanmamanızı öneririz.

Artık opcode ve veritabanı önbelleği etkinleştirilmiş çalışan bir wordpress kurulumumuz olduğuna göre, vernik kullanarak sitemiz için tam sayfa önbelleğini etkinleştireceğiz. Varnish, HTML sayfalarının tamamını bilgisayarın RAM'inde önbelleğe alan ve istek üzerine ziyaretçilere sunan bir proxy sunucu yazılımıdır. Vernik yaptığı işte çok iyidir ve sitenizin hızını 400 kat ve daha fazla artırabilir. Ancak, belirli amaçlar için verniği yapılandırmak ve tam sayfa önbelleğin istenen davranışını sürdürmek kolay değildir. Zaten kurduk ve sunucumuzda çalışıyor, web sayfalarını getirmek için nginx'imizi arka uç sunucusu olarak kullanacak şekilde yapılandırmamız gerekiyor. /etc/default/vernish dosyasını düzenleyin ve aşağıdaki içeriği "Alternatif 2, VCL ile konfigürasyon" bölümünün altındaki dosyaya kopyalayın

Bu dosyadaki yorumları dikkatlice okursanız, bu adımda ne yaptığımızı anlayacaksınız. Vernish'i sunucumuzun 80 portunu dinleyecek ve /etc/varnish/default.vcl dosyasını VCL olarak kullanacak ve wordpress tarafından oluşturulan HTML sayfalarını önbelleğe almak için 96MB RAM kullanacak şekilde yapılandırıyoruz. Yine 1GB'tan fazla RAM'iniz varsa veya sitenizde çok sayıda sayfa varsa, ihtiyacınıza göre bu değeri 96'dan artırabilirsiniz. Bu dosyayı kaydedin ve başka bir dosyayı düzenlemek için terminalde aşağıdaki komutu verin /etc/varnish/default.vcl

Bu konfigürasyonda her şeyi anlatamayacağız. Bu içerik, verniği arka uç sunucusu için 8080 numaralı bağlantı noktasını kullanacak şekilde yapılandırır ve varsayılan olarak vernik istekleri çerezlerle önbelleğe almadığından, istenmeyen tüm çerezleri istekten kaldırır. Arka uç sunucusu için 8080 numaralı bağlantı noktasını kullanacak şekilde yapılandırdığımızı unutmayın, bu nedenle nginx sunucusunun bağlantı noktasını 8080 olarak değiştirmemiz gerekiyor, böylece vernik kullanabilir ve vernik ile nginx çakışmaz. Nginx bağlantı noktasını değiştirmek için aşağıdaki komutu verin

Ve “listen 80” olan iki satırı düzenleyin; "8080'i dinle". Bu yapılandırma dosyasında iki kez yazılmadığından, satırın her iki örneğini de değiştirmeniz gerekir. Şimdi Ctrl+x ve ardından y tuşlarına basarak dosyayı kaydedip kapatın ve girin. Şimdi nginx'i yeniden başlatın ve cilalayın

Artık vps'nizde tamamen optimize edilmiş wordpress kurulumuna sahipsiniz. Konfigürasyon dosyalarında belirtilen tüm konfigürasyonlar ve değerler genel siteler içindir, Bu konfigürasyon 1GB RAM ve 2GHz işlemci VPS ile günde yaklaşık 100.000 ziyaretçiyi işleyebilir ancak testler ideal koşullarda yapılır). Sitenizi wordpress kontrol panelinden düzenlemenin keyfini çıkarın. Web sitenizi daha da optimize etmek için wordpress için herhangi bir html, css ve js minify eklentisi yükleyebilir ve statik içerikler için CDN kullanabilirsiniz. Zaman ayırdığınız için teşekkür ederiz, lütfen önerilerinizi ve şüphelerinizi aşağıya yorumlayın.

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

Divi's Theme Builder ile Özel Global Başlık Nasıl Oluşturulur

Artık Tema Oluşturucu burada olduğuna göre, web sitenizi A'dan Z'ye kurmanıza yardımcı olacak yeni eğitimlere dalmak için sabırsızlanıyoruz. Buna Divi'nin yerleşik seçeneğini kullanarak özel başlıklar oluşturma da dahildir. Bu eğitimde Divi's Theme Builder'ı kullanarak global bir başlık oluşturmaya odaklanacağız. Bu sayfaya veya gönderiye farklı bir başlık atamadıysanız, web sitenizin her yerinde genel bir başlık görünecektir.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir