Cpanel oldukca pahalı. Yani en azından bana göre pahalı geliyor. Aylık 20 dolar gibi bir fiyatı var. Tabi eğer self hosting kullanıyor iseniz Cpanel lisansı almanıza gerek kalmıyor. Cpanelin hosting panelini kullanıyor oluyorsunuz. Eğer kendinize ait bir sunucunuz olmasını istiyorsanız ve Cpanel için ücret ödemeniz gerekiyor. Tabi eğer kendinize 2 3 ortak bulursanız aynı lisanstan yararlanıp ortaklaşa ödeyebilirsiniz. (Sorun olur mu emin değilim)

İlk alternatifimiz Ajenti. Daha sonra 2 tane alternatif için de anlatımım olacak. Yine Digitalocean’ı tercih ediyoruz.

Digitalocean'a kayıt

Alttaki “Digitalocean kayıt ol” butonuna tıklayarak Digitalocean sitesine gidin. Alttaki butona tıklayarak kayıt olmaya giderseniz size 10 dolar hediye gelecektir ve bana da katkıda bulunmuş olursunuz.

Digitalocean Kayıt Ol



Hemen üst tarafta bulunan “Sign up” butonuna tıklıyoruz.



Daha sonraki ekranda sizden eposta ve parola isteyecek. Onaylama işlemlerinizi gerçekleştikten sonra artık ilk damlacığımızı oluşturun.

Giriş yaptıktan sonra üstteki “Create Droplet” butonuna tıklıyoruz.




Droplet Hostname: Öncelikle bu damlacığa bir isim vereceğiz. Bu ismi daha sonra değiştirebiliyorsunuz. Bu damlacığa dilediğiniz bir ismi verin.

Choose a size: Ben aylık 10 dolar olan paketi kullanmanızı öneriyorum. WordPress için başlangıçta en ideal paket budur. 1 GB ram, 1 CPU, 30 GB SSD ve 2 TB trafik. Yani aslında bu paket size uzun bir süre sunucuyla ilgili bir şey düşündürtmeyecek. Bir başka deyişle kafanız rahat edecek.



Choose a datacenter region: Bu kısımda sizden sunucunuzun lokasyonunu seçmenizi istiyor. Türkiye’ye en yakın Amsterdam gözüküyor ve çok yüksek bir ping değeri olmuyor.

Bu kısımdan sunucumuzun tabanını seçiyoruz. Bu alanda Ubuntu 14.04 x64’ü seçiniz.

Aşağı doğru iniyoruz ve orada “Backups” özelliğini açıyoruz. (Unutmadan belirteyim; Otomatik yedekleme özelliğini daha sonra açamıyorsunuz. Ancak yeni bir sunucu oluşturup (yedekleme özelliğini açarak), sunucunuzu oraya taşıyarak sağlayabiliyorsunuz.

ve “Create” diyoruz.

Damlacık 60 saniyede oluşuyor.

Email adresinize oluşturduğunuz damlacığın SSH bilgileri gönderildi. Onlarla SSH olarak giriş yapmamız gerekiyor. SSH kullanabilmek için: Windows kullanıyorsanız; PuTTY kullanın. Eğer Mac kullanıyorsanız terminalden yapabilirsiniz.

PuTTY indirdik. Email adresimizdeki bilgilerle giriş yapacağız.

ssh root@droplet-ip-adresi

Şu şekilde giriş yapıyorum:



Giriş yaptığınızda bir uyarı çıkacak. Ona “Yes” deyin. Giriş yaptığınızda parolanızı girmenizi ister. Unutmayın parolayı yazarken ekranda herhangi bir şey hareket olmaz. Sanki yazmıyormuş hissine kapılabilirsiniz , yazıyorsunuz. Yazdıktan sonra “Enter” tıklayın. Giriş yaptıktan sonra UNIX password diye bir şey çıkacaktır. O alana parolayı tekrar girin.

Daha sonra “ENTER new UNIX password” gelecektir. Oraya yeni bir parola girin (güçlü olması önemli. Bu root parolanız olacak). Daha sonra bunu tekrar girmenizi isteyecek.

Artık Ajenti’yi kurmaya hazırız.

gerekli paketleri çağırıyoruz:

wget http://repo.ajenti.org/debian/key -O- | sudo apt-key add -

kaynak listesine ekleme yapıyoruz:

echo "deb http://repo.ajenti.org/ng/debian main main ubuntu" | sudo tee -a /etc/apt/sources.list

ve yüklemeyi yapıyoruz:

sudo apt-get update && sudo apt-get install ajenti

Kurulum gerçekleşiyor.

şimdi ise ajenti’ye reset atıyoruz:

sudo service ajenti restart

Kurulum bitti. Şimdi Ajenti 8000 portunda dinleniyor.

panele gitmek için için girmeniz gereken adres:

https://ip-adresiniz:8000

eğer damlacığınıza domain bağlamışsanız:

https://domainadiniz:8000

Not: iptables kullanıyorsanız 8000 portuna izin vermeyi unutmayın.

Google Chorme kullanıyorsanız güvenilir olmadığını söyleyecek. Alttaki küçük yazı bağlantıya tıklayıp yine de devam etmesini söyleyin ve giriş yapın. Varsayılan bilgiler şöyledir:

Username: root

Password: admin

Giriş yaptık. Configure sekmesinden dili türkçe yapın. Parolanızı değiştirmeyi unutmayın.

Şimdi Nginx vs. işimize yarayacak yazılımları yükleyelim. Ajenti panelinden “Terminal” sekmesine tıklayın. Üst taraftaki “+Yeni” butonuna tıklayınız. “paste here” yazan kısma aşağıdaki komutu giriniz:

apt-get install ajenti-v ajenti-v-nginx ajenti-v-mysql ajenti-v-php-fpm ajenti-v-mail ajenti-v-nodejs php5-mysql


Bunu girdikten sonra birkaç şey isteyecektir. Bir devam etmek isteyip istemediğinizi. Buna “Y” deyip devam etmesini sağlayın. Daha sonra mysql için sizden root parolası isteyecek. Bunu sağlam bir parola seçseniz iyi olur.

Daha sonra reset Ajenti’ye reset attığınızda panele Web ve eposta kısımlarının eklendiğini fark ediceksiniz. Buradan doğrudan Nginx ayarları gibi şeyleri yapabilirsiniz.

Ben bir tane ip adresi üzerine WordPress kuracağım. (sizin domaininiz var ise Digitalocean üzerinden domaininizi sunucunuza bağlamanız gerekiyor. Ayrıca aldığınız firma üzerinden nameserver’ları)

“Websiteler” sekmesine giriniz.

Text alanına web sitesine isim verip oluştur diyoruz. “WEB SITESI DOSYALARI” kısmından sitenin hangi yolda bulunmasını istiyorsan orayı seçiyorsun. Ben “/srv/test” yaptım. Bakım modu sekmesini kaldırıp “Değişiklikleri kaydet” diyorum

Alan adları sekmesine geldik. Benim bir alan adım yok. Bu kısma alan adı girmek yerine ip adresini giriyorum. Değişiklikleri kaydet diyorum.

Gelişmiş sekmesine tıklıyoruz. “Özel yapılanma” alanına aşağıdaki kodu giriyoruz:

# This order might seem weird - this is attempted to match last if rules below fail.
location / {
try_files $uri $uri/ /index.php?$args;
}

# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

# Directives to send expires headers and turn off 404 error logging.
location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
access_log off; log_not_found off; expires max;
}

location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
# Keep logging the requests to parse later (or to pass to firewall utilities such as fail2ban)
location ~ /\. {
deny all;
}
# Deny access to any files with a .php extension in the uploads directory
# Works in sub-directory installs and also in multisite network
# Keep logging the requests to parse later (or to pass to firewall utilities such as fail2ban)
location ~* /(?:uploads|files)/.*\.php$ {
deny all;
}


Değişiklikleri kaydet diyoruz.

Şimdi “içerik” sekmesine tıklıyoruz. “PHP FastCGI” deyip oluştur diyoruz. Gelişmiş alanına gelip özel yapılandırma kısmına şu kodu ekliyoruz:

try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;


Değişikleri kaydedip mysql sekmesine tıklıyoruz.

Üst kısımdan önce bir veritabanı oluşturuyoruz. Bu alanda Root parolasını isteyecektir. Root parolasını bazı yüklemeler yaparken girmiştik. Daha sonra alt kısımdan bu veritabanına bir kullanıcı oluşturuyoruz. Bu kullanıcıya bütün izinleri veriyoruz. Parolayı rasgele bir değer verir. isterseniz değiştirebilirsiniz. Değişiklikleri onayla diyoruz. (Yazının başından beri değişiklikleri kaydet diye bahsettiğim şey değişiklikleri onayla imiş)

Şimdi sol taraftan terminal’e tıklayın. +Yeni deyin.

apt-get install zip unzip

Şimdi websiteler kısmından oluşturduğunuz alan adına girip “Genel” sekmesine gelin. O kısımda “otomatik indirme” diye bir alan mevcut. Şunu ekleyin ve “indir çıkart” deyin.

http://wordpress.org/latest.zip

Sol taraftan “Dosya yöneticisi” sekmesine tıklayın. Alan adınız için tanımladığınız yola gidin. Benim /srv/test idi. O alana gittim. Orada WordPress diye bir klasör görüyorum. WordPress klasörüne girin. Ve tümünü seç deyin.



Üst tarafta yeni dosya, yeni klasör kısmında “Kes” ikonu var. Makas şeklinde. Ona tıklayınız. WordPress klasöründen iki geri geliniz. Yani ben “srv/test/wordpress” yolundayken /srv/ alanına döndüm. “test” adındaki klasörün yanındaki kutucuğa tıklayarak seçtim ve üst kısımdan yapıştır dedim. O da makasın bulunduğu kısımda (yapıştır)

Daha sonra domaininizi adres çubuğuna yazıp veritabanı ayarlarınızı yapabilirsiniz.



ve bitti!

Kaynak: Cpanel’e alternatif: Ajenti ve WordPress Kurulumu