Bu rehberde, Ubuntu sunucusunda Nginx, PHP 8.1 ve MySQL kurulumu yaparak, dinamik bir web sitesi oluşturmayı öğreneceksiniz. Ayrıca, SSL sertifikası kurulumuyla web sitenizi güvenli hale getireceğiz. Adım adım takip edebileceğiniz bu yazı, hem başlangıç seviyesindeki kullanıcılar hem de tecrübeli yöneticiler için uygun olacaktır.
Ubuntu Sunucusunda Nginx Kurulumu
Nginx, hızlı ve verimli bir web sunucusu olarak, Linux tabanlı sistemlerde yaygın bir şekilde kullanılmaktadır. Ubuntu üzerinde Nginx kurulumu oldukça basittir. İlk olarak, sunucunuzda gerekli güncellemeleri yaparak başlayalım.
1. Nginx Kurulumu İçin Sunucuyu Güncelleme
Sunucunuzda en son güncellemeleri uygulamak için aşağıdaki komutları kullanabilirsiniz:
sudo apt update
sudo apt upgrade -y
2. Nginx Kurulumunu Yapma
Nginx’i yüklemek için şu komutu çalıştırın:
sudo apt install nginx -y
Nginx’i başlatmak ve sistem açıldığında otomatik olarak başlamasını sağlamak için:
sudo systemctl start nginx
sudo systemctl enable nginx
Nginx’in düzgün çalıştığını doğrulamak için tarayıcınızda sunucunuzun IP adresini yazın. Nginx’in varsayılan sayfası görünmelidir.
PHP 8.1 Kurulumu
PHP 8.1, modern web uygulamalarının geliştirilmesinde kullanılan güçlü bir programlama dilidir. Nginx ile PHP’yi entegre etmek için PHP 8.1 FPM (FastCGI Process Manager) kurmamız gerekecek.
1. PHP 8.1 Kurulumu
PHP 8.1 ve gerekli modülleri yüklemek için şu komutu kullanabilirsiniz:
sudo apt install php8.1 php8.1-fpm php8.1-mysql php8.1-xml php8.1-mbstring php8.1-curl php8.1-zip -y
2. PHP-FPM Servisini Başlatma
PHP-FPM servisini başlatın ve sistem açıldığında otomatik başlamasını sağlamak için:
sudo systemctl start php8.1-fpm
sudo systemctl enable php8.1-fpm
MySQL Kurulumu
MySQL, veritabanı yönetim sistemidir ve dinamik web siteleri için çok önemlidir. Nginx ve PHP ile uyumlu bir şekilde çalışacaktır.
1. MySQL Kurulumunu Yapma
MySQL’i yüklemek için şu komutu çalıştırın:
sudo apt install mysql-server -y
2. MySQL Güvenlik Ayarlarını Yapma
Kurulumdan sonra, veritabanınızı güvenli hale getirmek için şu komutu çalıştırın:
sudo mysql_secure_installation
Bu adımda, root şifresi belirleyecek ve veritabanı güvenlik ayarlarını yapılandıracaksınız.
Nginx ve PHP-FPM Entegrasyonu
Nginx ve PHP-FPM’i entegre etmek için, Nginx yapılandırma dosyasını düzenleyeceğiz. Web sitenizin kök dizini ve PHP çalıştırma yönergelerini belirleyeceğiz.
1. Nginx Konfigürasyon Dosyasını Düzenleme
Nginx için sites-available dizininde bir yapılandırma dosyası oluşturacağız. Örnek olarak, alan_adınız.com domainini kullanarak yapılandırma dosyasını şu şekilde düzenleyebilirsiniz:
sudo nano /etc/nginx/sites-available/alan_adınız.com
Aşağıdaki yapılandırmayı kullanın:
server {
listen 80;
server_name alan_adınız.com www.alan_adınız.com;
root /var/www/html;
index index.php index.html index.htm;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location / {
try_files $uri $uri/ =404;
}
}
2. Yapılandırmayı Aktif Hale Getirme
Yapılandırma dosyasını sites-available dizininden sites-enabled dizinine sembolik bağlantı (symlink) olarak ekleyin:
sudo ln -s /etc/nginx/sites-available/alan_adınız.com /etc/nginx/sites-enabled/
3. Nginx Yapılandırma Dosyasını Test Etme ve Yeniden Başlatma
Yapılandırmanın doğru olduğundan emin olmak için Nginx yapılandırma dosyasını test edin:
sudo nginx -t
Sonrasında Nginx’i yeniden başlatın:
sudo systemctl restart nginx
SSL Sertifikası Kurulumu ve HTTPS Yapılandırması
SSL sertifikaları, web sitenizin güvenliğini sağlar ve Google sıralamalarında önemli bir rol oynar. Let’s Encrypt kullanarak ücretsiz SSL sertifikası alacağız.
1. Certbot Kurulumu
Certbot, SSL sertifikalarını almak ve yenilemek için kullanılır. İlk olarak Certbot ve Nginx modülünü yükleyin:
sudo apt install certbot python3-certbot-nginx -y
2. SSL Sertifikası Almak
Aşağıdaki komut ile SSL sertifikasını alabilirsiniz:
sudo certbot --nginx -d alan_adınız.com -d www.alan_adınız.com
Bu işlem, SSL sertifikasını alacak ve Nginx yapılandırmanızı otomatik olarak HTTPS’yi destekleyecek şekilde güncelleyecektir.
3. SSL Yenileme Ayarları
SSL sertifikalarının süresi 90 gündür. Bu nedenle, sertifikaların otomatik olarak yenilenmesi gerekir. Aşağıdaki komutla SSL sertifikalarının yenilenmesini test edebilirsiniz:
sudo certbot renew --dry-run
Ayrıca, cron ile otomatik yenileme işlemi eklemek için şu komutu kullanabilirsiniz:
sudo crontab -e
Cron tablosuna şu satırı ekleyin:
0 0 * * * certbot renew --quiet && systemctl reload nginx
4. SSL Yapılandırma Testi
SSL sertifikasının doğru şekilde çalıştığını doğrulamak için SSL Labs aracını kullanabilirsiniz.
ANKSOFT’tan Ubuntu VDS Sunucusu Satın Alabilirsiniz!
Eğer yukarıdaki adımları izleyerek kendi Ubuntu sunucunuzu kurmayı düşünüyorsanız, ANKSOFT‘tan Ubuntu VDS (Virtual Dedicated Server) hizmeti satın alabilirsiniz. Güvenli, hızlı ve performanslı VDS sunucuları ile web projenizi kolayca barındırabilirsiniz.
ANKSOFT, yüksek performanslı Ubuntu VDS sunucuları sunarak, web uygulamalarınızı güvenli ve hızlı bir şekilde çalıştırmanıza olanak tanır. Ayrıca, 7/24 teknik destek ve yönetilen hizmetler ile sorunsuz bir deneyim sunuyoruz.
Daha fazla bilgi almak ve Ubuntu VDS sunucusu satın almak için ANKSOFT VDS Sayfası’na göz atabilirsiniz.