Linux Bilgisayara Web Sunucusu Nasıl Kurulur?
Makalemizde; bir Linux bilgisayarda yazacağınız web ortamını nasıl konfigüre edeceğinizi, nasıl yayınlayacağınızı adım adım gösterdik.
13.09.2022 tarihli yazı 5536 kez okunmuştur.
Web sunucumuzu oluşturmaya başlamadan önce, bir web sunucusunun nasıl oluştuğunu kavramak için aşağıdaki bileşenlerden meydana geldiğini bilmek gerekir:
► HTTP sunucusu
► Bir programlama dili
► Veri tabanı
► HTTP sunucusu
► Bir programlama dili
► Veri tabanı
►İlginizi Çekebilir: İstemci-Sunucu İletişimi Nedir?
Bunu daha iyi anlamak için şöyle bir senaryo düşünelim. Geliştirmekte olduğunuz web sayfanızın programlama dilinin PHP olduğunu varsayalım. Bu PHP diliyle yazılmış web sayfası bir veri tabanına erişip orada güncel olarak işlemler yaptığını; yeni veriler atadığını, verileri değiştirdiğini ve verileri sildiğini söyleyelim. PHP diliyle yazılmış bu web sayfası bu işlemleri sunucu (server) tarafında yapacak iken, istemci (client) tarafı ise sunucuya bu taleplerin yapılmasını söyler. Burada anlatılmak istenen şey, istemci sunucuya bir talep veya istek (request) gönderir ve sunucu bu isteklere göre bir dizi kural uygular. Bu kural dizisi programcı tarafından programlanır. Böyle bir senaryoda isteklerin HTTP mesajları ile gönderilir. Bu istekler sayesinde veri tabanından bir veri ile istenilen şekilde düzenleme yapılabilir. Veri tabanı MySQL ortamını kullanabilir veya veriler web sunucusunun kendi donanımı üstünde kaydettiği bir XML veya JSON uzantısında bile olabilir. Bu kadar bilgiden sonra Linux’ta nasıl bir web sunucusu kurulduğunu görelim.
Web Sunucusu Kurulumu
Yayın yapacak bilgisayarın işletim sistemini Ubuntu 18.04 olarak ele alalım. Web sunucusu olarak Ngnix veya Apache HTTP sunucusu ele alınabilir. Bu makalemizde biz Apache web sunucusunu kullanacağız. Ubuntu içerisinde terminal’i açıp artık başlayabiliriz.
1. Kurulum
sudo apt install apache2
Terminal üzerinde bu komut yazıldığında Ubuntu bilgisayarımıza apache2 http sunucusunu kurmuş olacağız. Kurulum tamamlandığında internet tarayıcınızı açarak IP ‘nizi girebilirsiniz.
http://[ip_adresiniz]
Adrese girildiği vakit aşağıdaki sayfa bizi karşılar. Eğer bu sayfa karşımıza çıkıyorsa http sunucusunun başarılı bir şekilde kurulduğunu ve çalıştığını düşünebiliriz.
2. Test Sayfası
Apache sunucusunun sunacağı web dosyaları /var/www/ dizinin altında bulunur. Yukarıda gördüğümüz bizi karşılayan hoş geldin sayfası da /var/www/html altında bulunmaktadır. /var/www/html klasörü Apache sunucusu için kök klasördür. Bu dizin altında-/var/www/websitelerim- kendi web dosyalarımızı barındıran bir klasör oluşturalım.
cd /var/www/
mkdir -p websitelerim/websitem1
echo “<H1>Sayfama Hoş Geldin<H1>” > websitelerim/websitem1/index.html
mkdir -p websitelerim/websitem1
echo “<H1>Sayfama Hoş Geldin<H1>” > websitelerim/websitem1/index.html
Bu işlemlerin sonucunda /var/www/websitelerim/websitem1/index.html içerisinde H1 etiketli html kodu bulunmalıdır.
<H1>Sayfama Hoş Geldin<H1>
3. Konfigürasyon
Apache sunucusunun konfigürasyon dosyaları “/etc/apache2/sites-available/” içerisinde bulunur. Bu dosya dizininin altında bulunan konfigürasyon dosyalarında Apache sunucusunun hangi web sayfasını sunacağı ve diğer çeşitli ayarlar belirtilir. Bu konfigürasyon ayarlarını yapmamızın sebebi 2. Adımda anlatılan /var/www/html klasörü Apache sunucusu için kök klasördür. Yani burada yazılan web sayfaları Apache sunucusunun sunacağı sayfalardır. Bu dizini değiştirebiliriz veya kendi konfigürasyon dosyamızı yazabiliriz. /etc/apache2/sites-avaliable dizinin altında var olan konfigürasyon dosyalarının bir tanesini temel olarak ele alalım ve kendi konfigürasyon dosyamıza kopyalayalım.
cd /etc/apache2/sites-avaliable/
cp 000-default.conf websitem1.conf
cp 000-default.conf websitem1.conf
websitem1.conf dosyasını açalım ve DocumentRoot özelliğini değiştirelim. Bu özellik Apache web sunucusunun sunacağı web sayfasının bulunduğu dizini (path) içerir. Bizim durumumuz için bu özelliği:
nano websitem1.conf
DocumentRoot /var/www/websitelerim/websitem1
DocumentRoot /var/www/websitelerim/websitem1
olarak değiştiriyoruz. Değişiklilikleri kaydettikten sonra default olarak sunulan web sitesini devre dışı bırakıp bizim sunacağımız olan web sitemizi aktif etmemiz gerekmektedir. Hatırlarsak default olarak sunulan web sitesi yukarıda gösterilen “Apache2 Ubuntu Default Page sayfasıydı. Kendi sayfamızı görüntülemek için:
sudo a2dissite 000-default
sudo a2ensite websitem1
sudo systemctl reload apache2
sudo a2ensite websitem1
sudo systemctl reload apache2
Sitemizi aktif ettikten sonra apache2 servisini yeniden başlatıyoruz. Böylece tekrar http://[ip_adresiniz] adresine girdikten sonra artık bizi böyle bir sayfanın karşılaması gerekiyor.
PHP Sunucu Konfigürasyonu
Sunucu tarafında Html sayfası yerine PHP sayfası sunmak isteyebiliriz. Sadece bir php sayfasını sunmak istiyorsak aşağıdaki adımları takip etmeliyiz. Sunucu konfigürasyonu yapmadan önce PHP kurulumunun doğru yapıldığından emin olmalıyız.
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.4
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.4
Bu adımların ardından PHP sayfasını düzenleyelim.
cd /var/www/websitelerim/websitem1
mv index.html index.php
mv index.html index.php
Bunların ardından /var/www/websitelerim/websitem1/index.php sayfasının içerisine:
nano index.php
<H1>Sayfama Hoş Geldin</H1>
<?php
phpinfo();
?>
<H1>Sayfama Hoş Geldin</H1>
<?php
phpinfo();
?>
yazalım ve değişiklikleri kaydedelim. Web sitesine gittiğimizde aşağıdaki sayfa bizi karşılayacaktır.
Web sunucumuzu bu şekilde oluşturmuş olduk.
Kaynak:
► apache.org/docs-project/
► php.net
Kaynak:
► apache.org/docs-project/
► php.net
YORUMLAR
Aktif etkinlik bulunmamaktadır.
- Dünyanın En Görkemli 10 Güneş Tarlası
- Dünyanın En Büyük 10 Makinesi
- 2020’nin En İyi 10 Kişisel Robotu
- Programlamaya Erken Yaşta Başlayan 7 Ünlü Bilgisayar Programcısı
- Üretimin Geleceğinde Etkili Olacak 10 Beceri
- Olağan Üstü Tasarıma Sahip 5 Köprü
- Dünyanın En İyi Bilim ve Teknoloji Müzeleri
- En İyi 5 Tıbbi Robot
- Dünyanın En Zengin 10 Mühendisi
- Üretim için 6 Fabrikasyon İşlemi
- Sigma DIN Rayı Çözümleri: Ürün Portföyü, Teknik Özellikler ve Kullanım Alanları
- Denizcilik Endüstri Uygulamaları ve Servis Bakım Süreçleri
- DrivePro Yaşam Döngüsü Hizmetleri
- Batarya Testinin Temelleri
- Enerji Yönetiminde Ölçümün Rolü: Verimliliğe Giden Yol
- HVAC Sistemlerinde Kullanılan EC Fan, Sürücü ve EC+ Fan Teknolojisi
- Su İşleme, Dağıtım ve Atık Su Yönetim Tesislerinde Sürücü Kullanımı
- Röle ve Trafo Merkezi Testlerinin Temelleri | Webinar
- Chint Elektrik Temel DIN Ray Ürünleri Tanıtımı
- Sigma Termik Manyetik Şalterler ile Elektrik Devrelerinde Koruma
ANKET