Ubuntu 18.04’de Apache Web Server kurulum rehberi

Merhabalar, bu yazıda Ubuntu 18.04 kurulu bilgisayarınızda veya sanal makinenizde dünyada en yaygın kullanılan web sunucusu olan Apache Web Server kurulumunu anlatacağım.

İhtiyacınız olanlar:

  • Ubuntu 18.04 yüklü bir bilgisayar

ve hepsi bu kadar 😛

Adım 1 – Apache servisini yükleyin

Şimdi ilk iş olarak Apache servisini yüklüyoruz. Apache Ubuntu’nun yazılım havuzunda bulunmaktadır, bu yüzden herhangi bir repository eklememiz gerekmiyor. Doğrudan aşağıdaki komutları Terminal’e girelim:

sudo apt update
sudo apt install apache2

Adım 2- Güvenlik duvarını (firewall) ayarlayın

Önce güvenlik duvarında izin verilmiş uygulamları kontrol edelim:

sudo ufw app list

Şunun gibi bir sonuç görmemiz gerekiyor:

Available applications:
Apache
Apache Full
Apache Secure
OpenSSH

Port 80’de trafiğe izin verecek olan Apache’yi güvenlik duvarı listesine ekleyelim:

sudo ufw allow 'Apache'

Şimdi aşağıdaki komut ile yapılan değişiklikleri kontrol edelim

sudo ufw status

Aşağıdaki gibi bir sonuç almanız gerekiyor:

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere                  
Apache                     ALLOW       Anywhere                  
OpenSSH (v6)               ALLOW       Anywhere (v6)             
Apache (v6)                ALLOW       Anywhere (v6)

Adım 3 – Web server’ınızı kontrol edin

Terminal’e aşağıdaki komutu yazarak Apache Web Server çalışıyor mu kontrol edin:

service apache2 status

Sonuç şuna benzer olmalıdır:

xch@XCH:~$ service apache2 status
● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: 
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since Fri 2020-02-14 21:04:57 +03; 3h 30min ago
  Process: 27704 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/
 Main PID: 1393 (apache2)
    Tasks: 6 (limit: 4915)
   CGroup: /system.slice/apache2.service
           ├─ 1393 /usr/sbin/apache2 -k start
           ├─27712 /usr/sbin/apache2 -k start
           ├─27714 /usr/sbin/apache2 -k start
           ├─27715 /usr/sbin/apache2 -k start
           ├─27716 /usr/sbin/apache2 -k start
           └─27717 /usr/sbin/apache2 -k start

Şub 14 21:04:57 XCH systemd[1]: Starting The Apache HTTP Server...
Şub 14 21:04:57 XCH apachectl[1310]: AH00558: apache2: Could not reliably determ
Şub 14 21:04:57 XCH systemd[1]: Started The Apache HTTP Server.
Şub 15 00:06:07 XCH systemd[1]: Reloading The Apache HTTP Server.
Şub 15 00:06:07 XCH apachectl[27704]: AH00558: apache2: Could not reliably deter
Şub 15 00:06:07 XCH systemd[1]: Reloaded The Apache HTTP Server.

Şimdi tarayıcınıza http://localhost yazarak Apache karşılama sayfasını görebilirsiniz.

Adım 4 – Virtual Host oluşturma

Virtual host ne işe yarar? Apache Web Server, virtual hostlar sayesinde bir bilgisayarda birden fazla site barındırabilmektedir. Basitçe anlatmak gerekirse aynı adreste barındırılan sitelerden hangisi için istek yollandığını anlar ve doğru site dosyalarının bulunduğu dizine yönlendirir.

Şimdi öncelikle /var/www dizinine gidin ve sitenizin adına bir klasör oluşturun, mesela:

/var/www/alan-adiniz.com ve bu klasörün içine de bir public_html klasörü açıp site dosyalarınızı bunun içerisine kopyalayabilirsiniz.

Şimdi bu klasör ve altındaki tüm klasörleri sahiplenelim. Doğru tabir bu mu emin değilim ama yaptığımız şey kendimizi sahip olarak atamak:

sudo chmod -R 755 peytuk.com

/var/www/alan-adiniz.com/public_html dizininin içine herhangi bir index.html koyduğunuzdan emin olun.

Şimdi virtual host dosyamızı oluşturmak için aşağıdaki komut ile konfigürasyon dosyamızı oluşturacağımız dizine gidiyoruz:

cd /etc/apache2/sites-available

Dizin değiştikten sonra yine Terminal’e alan-adiniz.conf adında bir dosya oluşturmak için şu komutu yazıyoruz:

sudo nano alan-adiniz.com.conf

Nano arayüzünde, oluşturduğumuz konfigürasyon dosyasına aşağıdaki bloğu kopyalayıp, kendi sitenize göre ServerAdmin(mail adresinizi yazabilirsiniz), DocumentRoot, ServerName, ServerAlias bloklarını güncelleyin:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/alan-adiniz.com/public_html
    ServerName alan-adiniz.com
    ServerAlias www.alan-adiniz.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Dosyayı kaydedip çıktıktan sonra Terminal’e aşağıdaki komutu girin (tekrar tekrar söylemek istemiyorum ama kendi alan adınıza göre güncelleyin):

sudo a2ensite alan-adiniz.com.conf

Şimdi de değişikliklerin etki etmesi için Apache servisini yeniden başlatmamız gerekiyor, aşağıdaki komut ile Apache servisini yeniden başlatın:

sudo service apache2 restart

Eğer şimdi tarayıcınıza http://alan-adiniz yazarsanız kendi sitenizi görebilirsiniz.

Bir sonraki adım olarak sitenizi tüm dünyaya nasıl açacağınızı henüz bilmiyorsanız bu makaleden yardım alabilirsiniz.