WordPress açık kaynaklı bir içerik yönetim sistemidir (CMS). Dünyadaki en popüler CMS olan WordPress, komut dosyalarını yürütmek ve dinamik içeriği işlemek için PHP kullanır ve bir MySQL veritabanı üstünde bloglar ve web siteleri kurmanıza olanak tanır.
OpenLiteSpeed, web sitelerini yönetmek ve sunmak için kullanabileceğiniz optimize edilmiş çok yüksek performası olan açık kaynak kodlu bir web sunucusudur. OpenLiteSpeed, onu ciddi bir seçim haline getiren bazı Apache uyumlu rewrite kuralları, yerleşik bir web tabanlı yönetim arayüzü ve sunucu için optimize edilmiş özelleştirilmiş PHP işleme gibi kullanışlı özelliklere sahiptir.
Hem WordPress hem de OpenLiteSpeed bir web tarayıcısı üzerinden yönetilebildiğinden, bu yapılandırma bir SSH oturumuna düzenli erişimi olmayanlar veya bir web sunucusunu komut satırı üzerinden yönetmek konusunda rahat hissetmeyenler için idealdir
Ön şartlar
Bu kılavuza başlamadan önce aşağıdakilere ihtiyacınız olacaktır:
- Ubuntu 18.04 LTS sunucusu (DigitalOcean ve Vultr tavsiyemdir)
- SSH erişimi ile root ya da sudo yetkilerine sahip bir kullanıcı
- OpenLiteSpeed (Bkz. Ubuntu 18.04 Üzerinde OpenLiteSpeed Web Sunucusu Nasıl Kurulur?)
- MySQL (Bkz. Ubuntu 18.04 Üzerinde MySQL Nasıl Kurulur?)
Adım 1 - WordPress için Veritabanı ve Veritabanı Kullanıcısı Oluşturma
WordPress, site ve kullanıcı bilgilerini yönetmek ve depolamak için MySQL kullanır. Ön koşullarda zaten MySQL yüklediniz, ancak hazırlık aşaması olarak WordPress’in kullanması için bir veritabanı ve kullanıcı oluşturmanız gerekiyor.
Başlamak için MariaDB kök (yönetici) hesabına giriş yapın. MariaDB, auth_socket
varsayılan kimlik doğrulama eklentisini kullanacak şekilde yapılandırılmışsa, aşağıdaki komutu kullanarak MariaDB yönetici hesabına giriş yapabilirsiniz:
sudo mysql
MySQL kök hesabı için bir parola kullanmak üzere kimlik doğrulama yöntemini mysql_native_password
ile değiştirdiyseniz, bunun yerine aşağıdaki komut biçimini kullanın:
mysql -u root -p
MySQL kök hesabı için ayarladığınız parolayı girmeniz istenecektir.
İlk olarak, WordPress’in kontrol edebileceği ayrı bir veritabanı oluşturabiliriz. Bunu istediğiniz gibi adlandırabilirsiniz, ancak biz basit tutmak için bu kılavuzda wordpress
adını kullanacağız. WordPress için veritabanı adını yazarak oluşturabilirsiniz:
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Daha sonra, sadece yeni veritabanımızda çalışmak için kullanacağımız ayrı bir MySQL kullanıcı hesabı oluşturacağız. Tek işlevli veritabanları ve hesaplar oluşturmak, yönetim ve güvenlik açısından iyi bir fikirdir. Bu kılavuzda biz wordpress_kullanici
adını kullanacağız. İsterseniz bunu değiştirmekten çekinmeyin.
Aşağıdaki komut bu hesabı oluşturur, bir parola belirler ve oluşturduğumuz veritabanına erişim izni verir. Veritabanı kullanıcınız için güçlü bir şifre seçmeyi unutmayın:
GRANT ALL ON wordpress.* TO 'wordpress_kullanici'@'localhost' IDENTIFIED BY 'MuhYalŞifreniz2020*-';
Artık her biri özellikle WordPress için oluşturulmuş bir veritabanınız ve kullanıcı hesabınız var. Veritabanı sunucusunun mevcut örneğinin son yaptığımız değişiklikleri bilmesi için ayrıcalıkları temizlemeliyiz:
FLUSH PRIVILEGES;
Daha sonra MySQL’dan çıkın:
EXIT;
Bu komut ile MariaDB oturumundan çıkacak ve normal Linux kabuğuna döneceksiniz.
MySQL kurulumunuzu WordPress ile çalışacak şekilde ayarladınız. Ardından, birkaç PHP uzantısı yükleyeceğiz.
Adım 2 - Ek PHP Uzantılarını Yükleme
Ön koşullardaki bir adımda zaten OpenLiteSpeed lsphp73
paketini yüklemiştiniz. Bu, harici uygulamalarla iletişim kurmak için LiteSpeed SAPI kullanan OpenLiteSpeed için optimize edilmiş bir PHP derlemesidir. İhtiyaçlarınıza bağlı olarak, WordPress istendiği gibi çalışması için başka PHP eklentileri gerektirebilir.
WordPress ile yaygın olarak kullanılan bazı PHP uzantılarını yüklemek için aşağıdaki komutu çalıştırın:
sudo apt install lsphp73-common lsphp73-curl lsphp73-imagick lsphp73-imap lsphp73-json lsphp73-memcached lsphp73-mysql lsphp73-opcache lsphp73-redis -y
Not: Bu komuttaki paketler her kullanım durumunu kapsamaz. Sunucunuza yüklediğiniz LiteSpeed deposunda bulunan PHP 7.3 uzantılarının tam listesi için LiteSpeed Wiki’ye bakın.
Bu işlemin tamamlanmasını takiben sunucunuzda WordPress’i indirmeye ve kurma işlemine devam edebilirsiniz.
Adım 3 - WordPress’i İndirme
Artık gerekli tüm sunucu yazılımlarımız yapılandırıldığına göre, WordPress’i indirip kurabiliriz. Özellikle güvenlik nedeniyle, WordPress’in en son sürümünü her zaman resmi sitelerinden almanız önerilir.
Yazılabilir geçici bir dizine geçin ve ardından aşağıdakileri yazarak sıkıştırılmış sürümü indirin:
cd /tmp
curl -O https://wordpress.org/latest.tar.gz
WordPress dizin yapısını oluşturmak için sıkıştırılmış dosyayı ayıklayın:
tar xzvf latest.tar.gz
Bu dosyaları geçici olarak belge kökümüze taşıyacağız, ancak önce WordPress kurulumunun bağımlılıkları olan birkaç dosya ve dizin oluşturacağız.
OpenLiteSpeed .htaccess
dosyalarını destekler. WordPress .htaccess
dosyasını kalıcı bağlantılar oluşturmak ve yönetmek için kullandığından, bu işlem önemlidir.
WordPress’in daha sonra kullanabilmesi için bir kukla .htaccess
dosyası ekleyin:
touch /tmp/wordpress/.htaccess
Örnek yapılandırma dosyasını WordPress’in gerçekten okuduğu yapılandırma dosya adıyla değiştirmeliyiz:
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
Ayrıca, upgrade
dizinini, WordPress’in yazılımında yapılacak otomatik ve manuel güncellemelerde izin sorunlarıyla karşılaşmamak için oluşturmalısınız;
mkdir /tmp/wordpress/wp-content/upgrade
Ardından, dizinin tüm içeriğini varsayılan OpenLiteSpeed sitesi belge köküne kopyalayın.
sudo cp -a /tmp/wordpress/. /usr/local/lsws/Example/html/wordpress
Artık dizinin tüm içeriğini belge kökümüze kopyalayabiliriz. Biz -a
komutu ile mevcut izinleri koruyarak, gizli dizinler (oluşturduğunuz .htaccess
dosyası gibi) de dahil olmak üzere, dizindeki her şeyin kopyalanması gerektiğini belirtmek için kaynak dizinimizin sonunda bir nokta kullanıyoruz:
WordPress’i web sunucunuza başarıyla yüklediniz ve ilk yapılandırma adımlarından bazılarını gerçekleştirdiniz. Daha sonra, WordPress’e güvenli bir şekilde çalışması için gereken yetkileri ve ayrıcalıkları verecek, daha önce oluşturduğunuz MySQL veritabanına ve kullanıcı hesabına erişecek bazı yapılandırma değişikliklerini uygulayacağız.
Adım 4 - WordPress Dizini Yapılandırma
WordPress için web tabanlı kurulum işlemine geçmeden önce WordPress dizinimizdeki bazı öğeleri ayarlamamız gerekiyor.
OpenLiteSpeed web sunucusunun varsayılan olarak çalıştığı nobody kullanıcısına ve nogroup grubuna dizindeki tüm dosyaların sahipliğini vererek başlayın. Aşağıdaki chown
komutu, OpenLiteSpeed’e wordpress
dizinindeki dosyaları okuma ve yazma yeteneği vererek web sitesine hizmet sağlamasına ve otomatik güncellemeler gibi işlemleri yapmasına izin verir.
sudo chown -R nobody:nogroup /usr/local/lsws/Example/html/wordpress
Ardından, WordPress dizinlerinde ve dosyalarında doğru izinleri ayarlamak için iki find
komutu çalıştırmamız gerekiyor.
sudo find /usr/local/lsws/Example/html/wordpress/ -type d -exec chmod 750 {} \;
sudo find /usr/local/lsws/Example/html/wordpress/ -type f -exec chmod 640 {} \;
Bazı eklentiler ek ayarlamalar gerektirse de, bunlar başlangıç için ayarlanmış ve önerdiğimiz makul izinlerdir.
İşlemi takiben, ana WordPress yapılandırma dosyasında bazı değişiklikler yapmanız gerekecektir.
Dosyayı açtığımızda, ilk işimiz kurulumumuz için biraz güvenlik sağlamak için gizli anahtarları ayarlamak olacaktır. WordPress, bu değerler için güvenli bir üretici sağlar, böylece kendi başınıza iyi değerler bulmaya çalışmak zorunda kalmazsınız. Bunlar yalnızca dahili olarak kullanılır.
WordPress gizli anahtar üreticisinden güvenli değerler almak için şu komutu yazın:
curl -s https://api.wordpress.org/secret-key/1.1/salt/
Aşağıdaki gibi görünen benzersiz değerleri çıktı olarak görmelisiniz:
Uyarı: Her seferinde benzersiz değerler talep etmeniz önemlidir.
define('AUTH_KEY', 'Ujr>4LF!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!jUTdl&B');
define('SECURE_AUTH_KEY', '}GP>Sxw!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!Bb#&iDD');
define('LOGGED_IN_KEY', 'RiE#PRy!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!cZ,CG^G');
define('NONCE_KEY', 'cgWpLF*!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!v`Ban*.');
define('AUTH_SALT', 'IY&j9vl!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!O4p--O&');
define('SECURE_AUTH_SALT', 'GynTW}|!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!Pkvru!T');
define('LOGGED_IN_SALT', 'tO3~};@!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!F:Hh)no');
define('NONCE_SALT', '&ZAUaZ5!!! BU DEĞERLER DEMODUR KOPYALAMAYIN !!!P=bE-Nu');
Bunlar, güvenli anahtarları ayarlamak için doğrudan yapılandırma dosyamıza yapıştırabileceğimiz yapılandırma satırlarıdır. Şimdi kendi aldığınız çıktıyı kopyalayın.
WordPress yapılandırma dosyasını açın:
sudo nano /usr/local/lsws/Example/html/wordpress/wp-config.php
Bu ayarlar için örnek değerleri içeren bölümü bulun. Şöyle gözükmeli;
* You can change these at any point in time to invalidate all existing cookies. This wi$
*
* @since 2.6.0
*/
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
Bu satırları silin ve komut satırından az önce oluşturduğunuz ve kopyaladığınız değerleri yapıştırın:
define('AUTH_KEY', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('SECURE_AUTH_KEY', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('LOGGED_IN_KEY', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('NONCE_KEY', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('AUTH_SALT', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('SECURE_AUTH_SALT', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('LOGGED_IN_SALT', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
define('NONCE_SALT', 'TERMİNALDEN SİZİN OLUŞTURUP KOPYALADIĞINIZ ANAHTAR');
Şöyle görünmelidir;
Ardından, dosyanın başlangıcında bazı veritabanı bağlantı ayarlarını değiştirmemiz gerekiyor. Veritabanı adını, veritabanı kullanıcısını ve MariaDB içinde yapılandırdığımız ilişkili şifreyi ayarlamanız gerekiyor.
Tırnak içerisinde yer alan değerleri değiştirmelisiniz;
define('DB_NAME', 'wordpress');
/** MySQL veritabanı kullanıcısı */
define('DB_USER', 'wordpress_kullanici');
/** MySQL veritabanı şifresi */
define('DB_PASSWORD', 'şifreniz');
Daha sonra veritabanı tablo ön ekini değiştirmemiz gerekecektir;
Şunu bulun;
$table_prefix = 'wp_';
Şunun gibi değiştirin (Siz kendi ön ekinizi belirlemelisiniz);
$table_prefix = 'muhyal_';
Şöyle görünmelidir;
Yapmamız gereken diğer değişiklik, WordPress’in dosya sistemine yazmak için kullanması gereken yöntemi ayarlamaktır. Web sunucusuna ihtiyaç duyduğu yere yazma izni verdiğimiz için, dosya sistemi yöntemini “doğrudan” olarak ayarlayabiliriz. Bunun mevcut ayarlarımızla ayarlanmaması, bazı eylemler gerçekleştirdiğimizde WordPress’in FTP kimlik bilgilerini istemesine neden olur. Bu ayar, veritabanı bağlantı ayarlarının altına veya dosyadaki herhangi bir yere eklenebilir:
define('FS_METHOD', 'direct');
İşlem bittiğinde dosyayı kaydedin ve kapatın.
Şöyle görünmelidir;
Bu noktada, WordPress sisteminizde tam olarak yapılandırılmamıştır, çünkü içeriği yayınlamaya başlamadan önce birkaç son dokunuş uygulamanız gerekir. Bunu yapmak için, önce OpenLiteSpeed kurulumunuzda birkaç yapılandırma değişikliği yapmanız gerekir.
Adım 5 - OpenLiteSpeed’i Yapılandırma
Şu anda, Ubuntu sunucunuzda WordPress yüklü, ancak OpenLiteSpeed kurulumunuz WordPress’i sunacak şekilde yapılandırılmamış durumdadır. Bu adımda, OpenLiteSpeed yönetim arayüzüne erişeceğiz ve sunucunuzun yapılandırmasında birkaç değişiklik yapacağız.
Tercih ettiğiniz web tarayıcısında, OpenLiteSpeed yönetim arayüzüne gidin. Buna, sunucunuzun genel IP adresini ya da ilişkili alan adını ve :7080
bağlantı noktasını yazarak erişebilirsiniz.
https://sizinalanadiniz:7080
https://sunucuipadresiniz:7080
OpenLiteSpeed kurulum eğitiminde tanımladığınız kullanıcı adını ve şifreyi girin:
OpenLiteSpeed konsolundan, sol kenar çubuğu menüsünde Server Configuration bulun ve tıklayın. Ardından External App sekmesine gidin, LiteSpeed SAPI App satırını bulun ve Düzenle düğmesine tıklayın:
OpenLiteSpeed eğitiminde lsphp73
paketini, yani LiteSpeed SAPI aracılığıyla OpenLiteSpeed ile çalışmak için optimize edilmiş bir PHP derlemesi kurduğunuzu hatırlayın. Ancak, External App sayfasındaki varsayılan ayarlar lsphp73
yerine lsphp
hedef gösterir. Bu nedenle, OpenLiteSpeed kurulumunuz PHP komut dosyalarını doğru şekilde yürütemez.
Bunu düzeltmek için Name alanını lsphp73
olarak değiştirin, Address alanını uds://tmp/lshttpd/lsphp73.sock
olarak değiştirin ve Command alanını $SERVER_ROOT/lsphp73/bin/lsphp
okuyacak şekilde değiştirin:
Bu değişiklikleri yaptıktan sonra , LiteSpeed SAPI App kutusunun sağ üst köşesindeki disket yani Kaydet simgesine tıklayın.
Ardından, soldaki menüden Virtual Hosts tıklayın. Virtual Hosts sayfasında, kullanmak istediğiniz sanal ana bilgisayarını bulmak için büyüteç simgesine tıklayın. Biz varsayılan Default sanal ana bilgisayarını kullanacağız:
Virtual Hosts > General sekmesine gidin. Orada, *General bölümünü bulun ve Düzenle düğmesine tıklayın:
OpenLiteSpeed, içeriğin sunulması için Document Root alanının içeriğine bakar . Tüm WordPress içeriğiniz ve dosyalarınız daha önce oluşturduğunuz wordpress
dizininde saklandığından, bu dizini işaret etmek için Document Root alanını güncelleyin. Bunu yapmak için tek yapmanız gereken wordpress/
değerini varsayılan değerin sonuna eklenmektir:
Bu değişikliği kaydetmek için disket yani Kaydet simgesini tıklayın.
General sekmesinde Index Files kısmını bulmak için aşağı doğru ilerleyin Düzenle butonuna tıklayın:
Index Files alanında, önce index.php,
sonra index.html
değerlerini girin. Bu işlemle PHP dosyalarının öncelik kazanmasına izin verdiniz. Bu alan güncelledikten sonra şöyle görünmelidir:
Devam etmeden önce disket yani Kaydet simgesini tıkladığınızdan emin olun.
Ardından, sanal ana bilgisayarın Rewrite sekmesine gidin. Rewrite Control bölümünü bulun ve Düzenle düğmesine basın:
İlgili düğmeleri tıklatarak Enable Rewrite ve Auto Load from .htaccess seçeneklerini Yes
olarak ayarlayın. Rewrite kısmını bu şekilde yapılandırmak, WordPress’te kalıcı bağlantıları kullanmanıza izin verecektir:
Bu değişiklikleri yaptıktan sonra Kaydet simgesini tıklayın .
OpenLiteSpeed kurulumunda bulunan varsayılan sanal ana bilgisayar, OpenLiteSpeed’in kullanıcı kimlik doğrulama özellikleri için bazı parola korumalı alanlar içerir. WordPress ise kendi kimlik doğrulama mekanizmalarını içerir ve biz OpenLiteSpeed’de bulunan dosya tabanlı kimlik doğrulamasını kullanmayacağız.
Security sekmesini açın, Realms List içerisinde bulunan SampleProtectedArea yanındaki çöp tenekesi yani Sil düğmesine tıklayın.
Silme işlemini onaylamanız istenecektir. Devam etmek için Delete tıklayın.
Ardından, Context sekmesini tıklayın. Context List alanındaki `/protected/ kısmını silin.
Silme işlemini onaylamanız istenecektir. Devam etmek için Delete tıklayın.
İhtiyaç duymayacağımızdan, aynı yöntemi kullanarak diğer yapılandırmaların herhangi birini veya tümünü güvenle silebilirsiniz. /protected/
yapılandırmasını özel olarak sildik, çünkü aksi takdirde ilişkili olan güvenlik alanının artık bulunmaması nedeniyle bir hata oluşacaktı (biraz önce Security sekmesinde kaldırdığımız kısım).
Şimdi, OpenLiteSpeed konsolunun sağ üst köşesindeki sağa doğru dönen yeşil ok simgeli butona basın. Bu, OpenLiteSpeed sunucusunu yeniden başlatarak yaptığınız değişikliklerin yürürlüğe girmesini sağlayacaktır.
OpenLiteSpeed sunucunuz tamamen yapılandırıldı. Artık tarayıcınızda WordPress kurulumunu tamamlamaya hazırsınız.
Adım 6 - Kurulumun WordPress Arayüzü ile Tamamlanması
Web tarayıcınızda sunucunuzun alan adına gidin:
http://sizinalanadiniz.com
- Kullanmak istediğiniz dili seçin.
- Ardından, ana kurulum sayfasına geleceksiniz.
- WordPress siteniz için bir ad seçin.
- WordPress siteniz için bir kullanıcı adı seçin (güvenlik amacıyla “admin” gibi ad seçmemeniz önerilir).
- Otomatik olarak güçlü bir şifre oluşturulacaktır. Bu şifreyi kaydedin veya alternatif güçlü bir şifre yazın.
- E-posta adresinizi girin.
- Arama motorlarının sitenizi dizine eklemesini engellemek isteyip istemediğinizi seçin.
- İleri’yi tıkladığınızda, giriş yapmanızı isteyen bir sayfaya yönlendirileceksiniz.
- Oluşturduğunuz kullanıcı adı ve şifre ile giriş yapın.
- Giriş yaptıktan sonra WordPress yönetim kontrol paneline yönlendirileceksiniz.
Yönetim panelinizden sitenizin temasında değişiklik yapmaya ya da içerik yayınlamaya başlayabilirsiniz.
Sonraki genel adımlar, yayınlarınız için kalıcı bağlantı ayarını seçmek (Ayarlar > Kalıcı Bağlantılar
içinde bulunabilir)
veya yeni bir tema (Görünüm > Temalar
içinde bulunabilir) seçmektir.
Ön kısım demoları;
Sonuç
Bu kılavuzu tamamlayarak, OpenLiteSpeed çalıştıran Ubuntu 18.04 sunucusuna bir WordPress sitesi yüklediniz ve yapılandırdınız.
Yeni WordPress sitenizin güvenliğini artırmak ve HTTPS üzerinden içerik sunabilmesi için siteyi SSL ile çalışacak şekilde yapılandırmanızı öneriyoruz.
İlgili öğretici yarın eklenecektir…
WordPress’i ilk kez kullanıyorsanız, yeni CMS’nizi tanımak için arayüzü biraz araştırın veya resmi belgelerindeki WordPress ile İlk Adımlar kılavuzunu kontrol edin.
Tabi herhangi bir sorunla karşı karşıyaysanız, bu makaleyi yanıtlamaktan da asla çekinmeyin