Komut İsteminden Wordpress Kurulumu (Ubuntu 18.04 LAMP)

Originally published at: http://yilmazsarac.com.tr/konsoldan-wordpress-kurulumu-ubuntu-18-04-lamp-2/

Bu rehber WordPress’in Ubuntu 18.04 ve LAMP ( (Linux, Apache, MySQL ve PHP) ) yüklü bir sanal sunucu (VPS) üzerinde, komut istemi yardımıyla nasıl kurulacağını anlatmaktadır. WordPress internetteki en popüler içerik yönetim sistemidir. PHP ve MySQL tabanlıdır; Blog veya herhangi bir amaca yönelik web sitelerini kolayca oluşturabilirsiniz.

Gereksinimler

  • Ubuntu 18.04 veya 16.04 İşletim Sistemi
  • LAMP Yığını (Apache, MySql, Php)
  • Sudo ayrıcalıklarına sahip kullanıcı (opsiyonel)

1. MySql Veritabanı Oluşturma

WordPress, kullanıcı bilgilerini yönetmek ve depolamak için MySQL kullanır. MySQL zaten kuruludur, ancak WordPress’in kullanabilmesi için bir veritabanı ve kullanıcı oluşturmamız gerekiyor.

Başlamak için, aşağıdaki komutu vererek MySQL kök (yönetici) hesabına giriş yapın:

mysql -u root -p
CREATE DATABASE veritabaniadi DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
GRANT ALL ON veritabaniadi.* TO 'kullaniciadi'@'localhost' IDENTIFIED BY 'sifre';

Not: “kullanıcıadi” kismina herhangi birşey yazabilirsiniz. Şu anda oluşturuyorsunuz. “Veritabaniadi” adı kısmına birönceki adımda oluşturduğunuz veritabanı adını yazın ve sonuna nokta koymayı unutmayın. Bu bilgileri not edin, daha sonra config.php dosyasına yazacağız.

MySql sunucu bilgiendirelim

FLUSH PRIVILEGES;

Çıkalım

exit;

2. Gerekli PHP Modüllerinin Yüklenmesi

WordPress’in ihtiyaç duyacağı bazı modülleri yükleyelim.

sudo apt update
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

Apache’yi yeniden başlatarak bilgilendirelim.

sudo systemctl restart apache2

Apache’nin .htaccsess dosyasına yazabilmesini sağlayalım. Sunucunuzda aşağıdaki klasöre gidin.

/etc/apache2/sites-available/

Klasörde her web sitesi için konfügirasyon dosyaları bulunur. Başka bir siteye bağlı değilse default.config dosyasını kullanın ya da çolatarak yeni bir tane oluşturun.

Aşağıdaki dosyayı açın.

/etc/apache2/sites-available/default.config

Dosya aşağıdaki gibi olmalıdır. .htaccess’e erişim sağlamak için “AllowOverride All” yönergesinin ekli olup olmadığını, ayrıca DocumentRoot, “ServerName” ve “Server Alias” yönergelerini kontrol edin.

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
		ServerName siteniz.com.tr
		ServerAlias www.siteniz.com.tr
    &lt;Directory /var/www/html/&gt;
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    &lt;/Directory&gt;

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    &lt;IfModule mod_dir.c&gt;
        DirectoryIndex index.php index.pl index.cgi index.html index.xhtml index.htm
    &lt;/IfModule&gt;</code></pre>

Mod-Rewrite Etkinleştirin

WordPress kalıcı bağlantı özelliğini kullanabilmemiz için etkinleştirmeniz gerekir.

sudo a2enmod rewrite

Apache cnfig dosyasında sözdizimi hatası olup olmadığını denetleyin.

sudo apache2ctl configtest

Apache’yi yeniden başlatın

sudo systemctl restart apache2

3. WordPress İndirme

Sunucu yazılımımız yapılandırıldıktan sonra WordPress’i indirip kurabiliriz. WordPress’in en son sürümünü indirelim.

Yazılabilir bir dizine geçelim ve ardından aşağıdakileri yazarak sıkıştırılmış sürümü indirelim:

cd /tmp
curl -O https://wordpress.org/latest.tar.gz

Sıkıştırımış dosyaları ayıklayalım

tar xzvf latest.tar.gz

Aşağıdaki komutu girerek .htaccess dosyamızı oluşturalım

touch /tmp/wordpress/.htaccess

WordPress örnek config dosyasının (wp-config-sample.php) adını wp-config.php olarak değiştirerek kopyalayalım.

cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

WordPress kendini güncellerken sorun yaşamaması için wp-content dizinde upgrade klasörü oluşturalım.

mkdir /tmp/wordpress/wp-content/upgrade

Şimdi WordPress’in tüm dosyalarıı geçici dizinden alıp web sitemizin kök klasörüne kopyalayalım.

sudo cp -a /tmp/wordpress/. /var/www/wordpress

4. WordPress Dizinini Yapılandırma

WordPress dosyalarımızın bulunduu klasörlerin izinlerini ayarlmamamız gerekiyor.

Www-data kullanıcısına ve grubuna tüm dosyaların sahipliğini vereceğiz. www-data kullanıcısı Apache web sunucusunun varsayılan kullanıcısıdır ve otomatik güncellemeler için WordPress dosyalarını okuyabilmesi ve yazabilmesi gerekecektir. İzinleri aşağıdaki komutu girerek ayarlayın.

sudo chown -R www-data:www-data /var/www/wordpress
sudo find /var/www/wordpress/ -type d -exec chmod 750 {} ;
sudo find /var/www/wordpress/ -type f -exec chmod 640 {} ;

Gizli anahtarları ayarlama

Komut istemiyle gizli anahtarları üretelim

curl -s https://api.wordpress.org/secret-key/1.1/salt/

Aşağıdakine benzer bir çıktı alacaksınız. (Aşağıdakileri kopyalamayın)

define('AUTH_KEY',         '1jl/vqfs<XhdXoAPz9c_j{iwqD^<+c9.k<J@4H');
define('SECURE_AUTH_KEY',  'E2N-h2]Dcvp+aS/p7X{Ka(f;rv?Pxf})CgLi-3');
define('LOGGED_IN_KEY',    'W(50,{W^,OPB%PB<2;y&,2m%3]R6DUth[;88');
define('NONCE_KEY',        'll,4UC)7ua+8<!4VM+ #`DXF+[$atzM7 o^-C7g');
define('AUTH_SALT',        'koMrurzOA+|L_lG}kf07VC*Lj*lD&?3w!BT#-');
define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VYC-?y+K0DK_+F|0h{!_xY');
define('LOGGED_IN_SALT',   'i^/G2W7!-1H2OQ+t$t6**bRVFSD[Hi])-qS`|');
define('NONCE_SALT',       'Q6]U:K?j4L%Z]}h^q7 1% ^qUswWgn+6&xqHN&%');

Şimdi config.php dosyasını açalım. Dilerseniz dosyayı SSH erişimi ile WinCSP benzeri bir program ve editör yardımı ile de düzenleyebilirsiniz.

sudo nano /var/www/wordpress/wp-config.php

wp-config.php dosyasında gizli anahtarların bulunduğu satırları silin ve komut istemindeki değerleri kopyalarak bu alana yapıştırın. Söz konusu alan değiştirilmeden önce aşağıdaki gibi görünür.

. . .

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’);

. . .

Ardından yine wp-config.php dosyasında veritabanı bilgilerini girmemiz gerekiyor. Yukarıda oluşturduğumuz bilgileri aşağıdaki gibi değiştirin.

. . .

define(‘DB_NAME’, ‘veritabaniadi’);

/** MySQL database username */
define(‘DB_USER’, ‘kullaniciadi’);

/** MySQL database password */
define(‘DB_PASSWORD’, ‘sifre’);

. . .

Veritabanına direkt yazma izni vermek için wp-config.php dosyasının en altına aşağıdaki satırı girin:

define('FS_METHOD', 'direct');

Hepsi bu kadar; tarayıcıya alan adınızı ya da sunucunuzun IP adresini yazarak kuruluma devam edebilirsiniz.