İçeriğe geç

Centos 9 Terminal WordPress Kurulumu

Merhabalar. Centos üzerine WordPress in son sürümünü nasıl kurarız ne yapmamız gerekiyor hangi adımlarla ilerlememiz gerekiyor onlardan bahsedeceğim.

Öncelikle terminal ve root erişiminiz olmalı. Burada anlatacağım yöntem bir plesk panel yada cpanel ile yapılan kolay kurulum değil server admin seviyesinde word press kurulumu için gereklidir.

İhtiyacımız olanlar MariaDB, Nginx, PHP yüklemelerini doğru bir şekilde yapmak. Şayet adımları doğru bir şekilde yaparsanız sonucunda sıkıntısız bir şekilde web sitesine ulaşıp siteyi görüntüleyebileceksiniz.

Şimdi sitemize ssh ile ulaşıyoruz. Windowslarda ve diğer terminallerde bunu ssh komutu ile yapabilirsiniz. Terminale ssh root@[sunucu-ip-adresi] ile sunucunuzun ip adresini yazarak ulaşırsanız size şifre soran bir ekran ile karşılacaşaksınız. Bu kısımda da root şifreinizi girmeniz gerekiyor.

🙂 sunucunun ip bilgisini kapatacağım tabi ki 🙂

Neyse işimize bakalım. Giriş yaptıktan sonra şu komutlar ile başlıyoruz.

sudo dnf update -y

bu komut paketlerinizi ve sisteminizi update edecektir. Siz dnf yerine yum da kullanabilirsiniz. Centos 9 da ikiside çalışıyor.

Daha sonra nginx yüklüyoruz.

sudo dnf install nginx -y

Burada nginx den sonra -y parametresi koyduğumu görmüşsünüzdür. Bu parametre “yes” demek oluyor. Normalde bu parametreyi koymazsanız size yükleme sırasında sorduğu sorularda y yazmanız gerekiyor. Ama bu şekilde otomatikmen kısa kes evet demiş oluyorsunuz 🙂

sudo systemctl start nginx
sudo systemctl enable nginx

bu şekilde ilk olarak nginx i start ediyoruz ve enable ile servisimizi sürekli çalışır hale getirip linklerinin oluşturulmasını sağlıyoruz.

sudo dnf install epel-release -y
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm -y

bu şekilde php yüklemeleri için gerekli olan repositorylerimizi indirmiş oluyoruz.

sudo dnf module reset php
sudo dnf module enable php:remi-8.2

Bir önceki kodda dnf yani paket yöneticimiz link üzerinden indirdiğimiz modülü burada enable ediyoruz.

sudo dnf install php php-fpm php-mysqlnd php-opcache php-gd php-xml php-mbstring php-json php-curl -y

Bu komut ile toplu bir yükleme başlatıyoruz. Şimdi sıra geldi php-fpm ayarlarını yapmaya. Bunun için öncelikle nano yu yüklememiz gerekebilir. Nano terminalde dosyaların içini açıp düzenleme yapabileceğiniz faydalı bir konsol editörü aslında.

sudo dnf install nano

Bu komut nano yu yüklemek için yeterli. Şimdi sıra geldi php-fpm ayalarını yapmaya. bunun için nanoya aşağıdaki komutu verip php-fpm dosyasını açacağız.

sudo nano /etc/php-fpm.d/www.conf

bununla birlikte karşınıza dosyanın içeriği çıkacak. Biraz aşağıda user ve group yazan kısmı bulup aşağıdaki gibi değiştirmek gerekiyor.

user = nginx
group = nginx

Bu işlem başarılı ise php-fpm servisini start ve enable edebiliriz.

sudo systemctl start php-fpm
sudo systemctl enable php-fpm

Bu komutlar başarı ile bitnce şimdi sırada mariadb yükleme işinde. Burada iki paket yüklemek gerekiyor biri mariadb diğeri mariadb-server. Onlar için gerekli komutu yazıyoruz:

sudo dnf install mariadb-server mariadb -y

bu yükleme tamamlandıktan sonra mariadb kurulumuna geçiyoruz. Bunuda bir komut ile basitçe yapabilirsiniz.

sudo mysql_secure_installation

burada size bir takım sorular soracak. Root şifresini girin ve anonymous erişimi ve remote erişimi kapatın bence. Fakat burda sorduğu sorulara tamamen sizin vereceğiniz cevaplar önemli.

Mariadb kurulumu bittikten sonra girdiğiniz parola ile aşağıdaki gibi komut vererek mysql e giriş yapmanız gerekiyor.

sudo mysql -u root -p

Daha sonrasında MYSQL> şeklinde artık sql komutları çalıştırabileceğimiz konsola geçmiş bulunuyoruz. Burada sırası ile aşağıda yazdığım komutları işletim veritabanı ve user ismini isteğinize göre replace edebilirsiniz.

CREATE DATABASE wordpress;
CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Sıra geldi wordpress i indirip configure etmeye. Bu kısımda aşağıdaki komutları sırası ile çalıştırıp wordpress i /var/www/html dizinine açıyoruz.

cd /var/www
sudo curl -O https://wordpress.org/latest.tar.gz
sudo tar -zxvf latest.tar.gz
sudo mv wordpress /var/www/html/
sudo chown -R nginx:nginx /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

Şimdide bu gelen dosyalarda bulunan config dosyasını kopyalayarak kendi configlerimizi vermemiz gerek.

sudo cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php

Bu adımda nano ile oluşturduğumuz config dosyasını açıyoruz.

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

Bu kısımda nano ile açtığımız dosyada aşağıdaki kısımları kendi configlerimiz ile replace ediyoruz. Yani user veritabanı bilgilerini değiştiriyoruz. Eğer yukarda kurulum yaparken bilgileri değiştirmediyseniz aşağıdaki gibi ayarlamanız yeterli olacaktır.

define( 'DB_NAME', 'wordpress' );
define( 'DB_USER', 'wordpressuser' );
define( 'DB_PASSWORD', 'password' );
define( 'DB_HOST', 'localhost' );

Buda tamam ise şimdi nginx configlerini yapmamız gerekiyor. Nano ile nginx config dosyası oluşturuyoruz bir tane.

sudo nano /etc/nginx/conf.d/wordpress.conf

daha sonrasında oluşturduğumuz bu konfig dosyası içine aşağıdaki şekilde tanımlarımızı yapıyoruz.

server {
    listen 80;
    server_name your_domain.com;
    root /var/www/html/wordpress;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location ~ /\.ht {
        deny all;
    }
}

CTRL-X yaptığımız evet diyerek dosyayı kaydedince. Nginx dosyasının konfig doğruluğunu aşağıdaki nginx komutu ile test ediyoruz.

sudo nginx -t

Eğer buraya kadar herşeyi doğru yaptıysanız burası size success dönmesi gerekecek. Bu arada yukardaki configlerde görüldüğü gibi bir domain tanımı var. Domaininizin A recordlarının sunucunuza yönlendirilmiş olduğunu düşünüyorum. Bu kısımda your_domain.com kısmını kendi domaininiz ile replace etmeniz gerek.

sudo systemctl restart nginx

Yukardaki kod ile nginx restart edince artık web browser üzerinden domain ile wordpress kurulum adresine erişebilirsiniz. Bonus olarak aşağıdaki komutları işletip sitenizde SSL aktif edebilirsiniz. Ben sitenizi aynı zamanda cloudflare arkasına alıp ssl sertifikanızı da cloudflare arkasına almanızı tavsiye ediyorum. Fakat aşağıdaki komut cloud flare olsun olmasın düzgün çalışacak ve sitesiniz ssl aktif edecektir.

sudo dnf install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your_domain.com

Umarım faydalı bir doküman olmuştur. Alınan hatalar ve diğer konularda yorumlar kısmında elimden geldiğince yardımcı olmaya çalışacağım tabi ki.

Kategori:Server Management

İlk Yorumu Siz Yapın

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir