Drupal 7 Tema Yükleme ve Tema Ayarları | TürkçeDrupal.org
İçindekiler:
- Ön şartlar
- MySQL veritabanı oluşturma
- PHP Yükle
- Besteciyi Yükle
- Drupal'ı yükle
- Nginx'i Yapılandır
- Kurulumu Test Edin
- Drupal Modüllerini ve Temalarını Yükleme
- Drupal Çekirdeğini Güncelle
- Sonuç
Drupal, dünyanın önde gelen açık kaynaklı CMS platformlarından biridir. Esnek, ölçeklenebilir ve küçük kişisel bloglardan büyük kurumsal, politik ve hükümet sitelerine kadar farklı web siteleri oluşturmak için kullanılabilir.
Bu derste, Drupal 8.6'nın CentOS 7'ye nasıl kurulacağını açıklayacağız.
Drupal'ı kurmanın birden çok yolu vardır. Bu kılavuz, drupal projesi adı verilen Drupal projeleri için bir besteci şablonu kullanarak Drupal'ı kurmak için gerekli adımları kapsar.
Nginx'i web sunucusu olarak, en son PHP 7.2'yi ve MySQL / MariaDB'yi veritabanı sunucusu olarak kullanacağız.
Ön şartlar
Kuruluma başlamadan önce aşağıdaki ön koşulları karşıladığınızdan emin olun:
- Genel sunucu IP'nizi işaret eden bir alan adınız olsun.
example.comkullanacağız. Nginx yüklü olsun, alan adınız için bir SSL sertifikası yüklü olsun. Bu talimatları izleyerek ücretsiz bir Let's Encrypt SSL sertifikası yükleyebilirsiniz. Sudo ayrıcalıklarına sahip bir kullanıcı olarak oturum açın.
MySQL veritabanı oluşturma
İlk adım, yeni bir veritabanı ve kullanıcı hesabı oluşturmak ve kullanıcıya uygun izinleri vermektir.
Sunucunuzda MySQL veya MariaDB zaten kuruluysa, bu adımı atlayabilirsiniz, eğer değilse MariaDB 5.5 sunucu paketini CentOS'un varsayılan depolarından şu şekilde yazabilirsiniz:
sudo yum install mariadb-server
Yeni MariaDB / MySQL kurulumlarında, veritabanı sunucunuzun güvenliğini artırmak için
mysql_secure_installation
komutunu çalıştırmanız önerilir.
Aşağıdaki komutu yazarak MySQL kabuğuna giriş yapın ve istendiğinde parolayı girin:
mysql -u root -p
drupaluser
adlı bir veritabanı oluşturmak için,
drupaluser
adlı kullanıcı ve kullanıcıya gerekli izinleri vermek için aşağıdaki komutları çalıştırın:
CREATE DATABASE drupal CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES ON drupal.* TO 'drupaluser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
PHP Yükle
CentOS 7, eski ve artık desteklenmeyen PHP 5.4 sürümüyle birlikte gelir. Drupal için önerilen PHP sürümü PHP 7.2'dir.
PHP 7.2'yi CentOS 7'ye kurmak için önce EPEL ve Remi depolarını etkinleştirmeliyiz:
sudo yum install epel-release yum-utils
sudo yum install
sudo yum-config-manager --enable remi-php72
Depolar PHP 7.2'yi yüklemek için etkinleştirildikten ve gerekli tüm PHP uzantıları aşağıdaki komutları çalıştırır:
sudo yum install php-cli php-fpm php-mysql php-json php-opcache php-mbstring php-xml php-gd php-curl git
PHP FPM'yi kurduk çünkü Nginx'i bir web sunucusu olarak kullanacağız.
Varsayılan olarak PHP FPM, bağlantı noktası 9000'de kullanıcı
apache
olarak çalışacaktır. Kullanıcıyı
nginx
değiştireceğiz ve TCP soketinden Unix soketine geçeceğiz. Bunu yapmak için
/etc/php-fpm.d/www.conf
dosyasını açın ve sarı renkle vurgulanan satırları düzenleyin:
… user = nginx… group = nginx… listen = /run/php-fpm/www.sock… listen.owner = nginx listen.group = nginx
/var/lib/php
dizininin aşağıdaki chown komutunu kullanarak doğru sahipliğe sahip olduğundan emin olun:
sudo chown -R root:nginx /var/lib/php
Son olarak, PHP FPM hizmetini etkinleştirin ve başlatın:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
Besteciyi Yükle
Composer, PHP için bir bağımlılık yöneticisidir. Drupal şablonunu indireceğiz ve besteci ile gerekli tüm Drupal bileşenlerini kuracağız.
Aşağıdaki komut, Composer yükleyicisini curl ile indirip dosyayı
/usr/local/bin
dizinine taşıyarak composer'ı global olarak kuracaktır:
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
Besteci sürümünü yazdıracak olan aşağıdaki komutu çalıştırarak kurulumu doğrulayın:
composer --version
Çıktı şöyle görünmelidir:
Composer version 1.8.4 2019-02-11 10:52:10
Drupal'ı yükle
Artık besteci yüklendi,
/var/www/my_drupal
dizinindeki Drupal şablonunu kullanarak yeni bir Drupal projesi oluşturun:
sudo /usr/local/bin/composer create-project drupal-composer/drupal-project:8.x-dev /var/www/my_drupal --stability dev --no-interaction
Yukarıdaki komut, şablonu indirecek, gerekli tüm php paketlerini getirecek ve projeyi kuruluma hazırlamak için gerekli komut dosyalarını çalıştıracaktır. İşlem birkaç dakika sürebilir ve başarılı olursa çıktının sonu şu şekilde görünür:
Create a sites/default/settings.php file with chmod 0666 Create a sites/default/files directory with chmod 0777
Sonraki adım Drupal'ı Drush kullanarak kurmaktır. Aşağıdaki komutta, MySQL veritabanını ve ilk bölümde oluşturduğumuz kullanıcı bilgilerini aktarıyoruz:
cd /var/www/my_drupal
sudo vendor/bin/drush site-install --db-url=mysql://drupaluser:change-with-strong-password@localhost/drupal
Yükleyici sizden aşağıdaki mesajı soracaktır, devam etmek için sadece enter tuşuna basın.
You are about to DROP all tables in your 'drupal' database. Do you want to continue? (yes/no):
Yükleme tamamlandığında komut dosyası yönetici kullanıcı adını ve parolasını yazdıracaktır. Çıktı aşağıdaki gibi görünmelidir:
Starting Drupal installation. This takes a while. Installation complete. User name: admin User password: frxka2Db5v
Son olarak, web sunucusunun sitenin dosyalarına ve dizinlerine tam erişime sahip olması için doğru izinleri ayarlayın:
sudo chown -R nginx: /var/www/my_drupal
Nginx'i Yapılandır
Şimdiye kadar, bu eğitim için önkoşulları kontrol etmiyorsanız, sisteminizde zaten SSL sertifikalı Nginx yüklü olmalıdır.
Yeni Drupal projemiz için yeni bir sunucu bloğu oluşturmak için resmi Nginx sitesinden Nginx tarifini kullanacağız.
Metin düzenleyicinizi açın ve aşağıdaki dosyayı oluşturun:
sudo nano /etc/nginx/conf.d/example.com
/etc/nginx/conf.d/example.com
# Redirect HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # Redirect WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; root /var/www/my_drupal/web; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ \..*/.*\.php$ { return 403; } location ~ ^/sites/.*/private/ { return 403; } # Block access to scripts in site files directory location ~ ^/sites/+/files/.*\.php$ { deny all; } # Block access to "hidden" files and directories whose names begin with a # period. This includes directories used by version control systems such # as Subversion or Git to store control files. location ~ (^|/)\. { return 403; } location / { try_files $uri /index.php?$query_string; } location @rewrite { rewrite ^/(.*)$ /index.php?q=$1; } # Don't allow direct access to PHP files in the vendor directory. location ~ /vendor/.*\.php$ { deny all; return 404; } location ~ '\.php$|^/update.php' fastcgi_split_path_info ^(.+?\.php)(# Fighting with Styles? This little gem is amazing. # location ~ ^/sites/.*/files/imagecache/ { # For Drupal <= 6 location ~ ^/sites/.*/files/styles/ { # For Drupal >= 7 try_files $uri @rewrite; } # Handle private files through Drupal. Private file's path can come # with a language prefix. location ~ ^(/+)?/system/files/ { # For Drupal >= 7 try_files $uri /index.php?$query_string; } location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { try_files $uri @rewrite; expires max; log_not_found off; } }
Example.com'u Drupal alan adınızla değiştirmeyi ve SSL sertifika dosyalarına doğru yolu ayarlamayı unutmayın. Tüm HTTP istekleri HTTPS'ye yönlendirilecektir. Bu yapılandırmada kullanılan snippet'ler bu kılavuzda oluşturulur.
Nginx hizmetini yeniden başlatmadan önce, sözdizimi hatalarının olmadığından emin olmak için bir test yapın:
sudo nginx -t
Değişikliklerin etkili olması için Nginx hizmetini yeniden başlatın:
Kurulumu Test Edin
Tarayıcınızı açın, alan adınızı yazın ve yüklemenin başarılı olduğunu varsayarak aşağıdakine benzer bir ekran görünecektir:
Yönetici olarak oturum açabilir ve yeni Drupal kurulumunuzu özelleştirmeye başlayabilirsiniz.
Drupal Modüllerini ve Temalarını Yükleme
Artık Drupal projenizi yüklediniz, bazı modülleri ve temaları yüklemek isteyeceksiniz. Drupal modülleri ve temaları, drupal projesinin bizim için kutudan çıktığı gibi yapılandırıldığı özel bir besteci deposunda barındırılmaktadır.
Bir modül veya tema yüklemek için tek yapmanız gereken proje dizinine
cd
ve
composer require drupal/module_or_theme_name
. Örneğin, Pathauto modülünü kurmak istiyorsak, aşağıdaki komutu çalıştırmamız gerekir:
cd /var/www/my_drupal
sudo -u nginx /usr/local/bin/composer require drupal/pathauto
Sudo
sudo -u nginx
başlangıcında komutu
nginx
kullanıcısı olarak çalıştırıyoruz
Using version ^1.3 for drupal/pathauto./composer.json has been updated > DrupalProject\composer\ScriptHandler::checkComposerVersion Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 3 installs, 0 updates, 0 removals - Installing drupal/token (1.5.0): Downloading (100%) - Installing drupal/ctools (3.2.0): Downloading (100%) - Installing drupal/pathauto (1.3.0): Downloading (100%) Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested. Writing lock file Generating autoload files > DrupalProject\composer\ScriptHandler::createRequiredFiles
Yukarıdaki çıktıdan da görebileceğiniz gibi, besteci de bizim için tüm paket bağımlılıklarını yükler.
Drupal Çekirdeğini Güncelle
Yükseltmeden önce, dosyalarınızın ve veritabanınızın yedeğini almak her zaman iyi bir fikirdir. Yedekle ve Taşı modülünü kullanabilir veya veritabanınızı ve dosyalarınızı manuel olarak yedekleyebilirsiniz.
Kurulum dosyalarını yedeklemek için aşağıdaki rsync komutunu kullanabilirsiniz, elbette kurulum dizinine doğru yolu kullanmanız gerekir:
sudo rsync -a /var/www/my_drupal/ /var/www/my_drupal_$(date +%F)
Veritabanını yedeklemek için standart
mysqldump
komutunu kullanabiliriz:
mysqldump -u root -p > /var/www/my_drupal_database_$(date +%F).sql
veya
drush sql-dump
:
cd /var/www/my_drupal
vendor/bin/drush sql-dump > /var/www/my_drupal_database_$(date +%F).sql
Şimdi bir yedek oluşturduğumuza göre, aşağıdaki komutu çalıştırarak tüm Drupal çekirdek dosyalarını devam ettirebilir ve güncelleyebiliriz:
sudo -u nginx /usr/local/bin/composer update drupal/core webflo/drupal-core-require-dev symfony/* --with-dependencies
Sonuç
Tebrikler, besteci kullanarak Drupal 8'i başarıyla yüklediniz ve modül ve temaların nasıl kurulacağını öğrendiniz. Artık sitenizi özelleştirmeye başlayabilirsiniz. Drupal 8 Kullanım Kılavuzu, Drupal kurulumunuzu nasıl yöneteceğiniz hakkında daha fazla bilgi edinmek için iyi bir başlangıç noktasıdır. Ayrıca, Github'daki Drupal Composer şablon projesini ziyaret etmeyi unutmayın.
centos drupal mysql mariadb cms nginx besteciCentos 8'de bir nfs sunucusu nasıl kurulur ve yapılandırılır
Bu öğreticide, CentOS 8'de bir NFSv4 Sunucusu kurmak için gerekli adımları uygulayacaksınız. Ayrıca, istemciye bir NFS dosya sisteminin nasıl takılacağını da göstereceğiz.
Centos 7'ye nagios nasıl kurulur ve yapılandırılır
Nagios, en popüler açık kaynak izleme sistemlerinden biridir. Nagios tüm BT altyapınızın envanterini tutar ve ağlarınızın, sunucularınızın, uygulamalarınızın, hizmetlerinizin ve işlemlerinizin çalışır durumda olmasını sağlar. Bu öğreticide, bir CentOS 7 sunucusuna Nagios Core'un nasıl kurulacağı ve yapılandırılacağı açıklanmaktadır.
Centos 7 üzerine squid proxy nasıl kurulur ve yapılandırılır
Squid, HTTP, HTTPS, FTP ve daha fazlası gibi popüler ağ protokollerini destekleyen tam özellikli bir önbellek proxy'dir. Bu eğitimde, CentOS 7'de Squid'i nasıl kuracağınız açıklanmaktadır







