H2O Web Sunucusunu CentOS 7ye Yükleme

H2O, kullanımda olan tüm mevcut web sunucularının mükemmel, tam özellikli bir HTTP / 2 uygulamalarına sahip yeni nesil bir HTTP sunucusudur. Web sunucunuz olarak H2O ile, nadiren konuşulan modern tarayıcı özelliklerinden yararlanabilecek gecikme optimizasyonu, sunucu push ve sunucu tarafı önceliklendirme gibi HTTP / 2 spesifikasyonunun yeni özelliklerinden yararlanabilirsiniz.

Bu ayrıntılı eğitimde, size CentOS 7 x64 örneğinizde H2O'nun nasıl çalıştırılacağını adım adım göstereceğim.

Ön şartlar

  • Bir CentOS 7 x64 sunucu örneği.
  • Bir sudo kullanıcısı.
  • SSL sertifikası (isteğe bağlı)

1. Adım: Sistemi güncelleyin

Örneğinizin altında bulunan kimlik bilgileriyle SSH üzerinden oturum açın ve sistemi aşağıdaki gibi güncelleyin.

sudo yum install epel-release -y
sudo yum clean all && sudo yum update -y

Adım 2: H2O'yu yükleyin

CentOS 7 üzerine H2O kurmak için, önceden oluşturulmuş H2O ikili dosyalarını kurmak için Bintray RPM deposunu eklemeniz gerekir. Özel bir repo oluşturmak için Nano düzenleyiciyi kullanın.

sudo nano /etc/yum.repos.d/bintray-h2o-rpm.repo

Aşağıdaki metni kopyalayıp repo dosyasına yapıştırın.

[bintray-h2o-rpm]
name=bintray-h2o-rpm
baseurl=https://dl.bintray.com/tatsushid/h2o-rpm/centos/$releasever/$basearch/
gpgcheck=0
repo_gpgcheck=0
enabled=1

Sonra H2O'yu takın.

sudo yum install h2o -y

Artık H2O yüklendi, ancak hizmeti etkinleştirip başlatmadan önce uygun bir yapılandırma gerekiyor ve H2O'nun altında çalışması için belirli bir kullanıcı ve grup oluşturmamız gerekiyor. H2O'nun adlandırılmış altında çalışması için bir grup ve kullanıcı oluşturun h2o.

sudo groupadd -g 101 h2o
sudo useradd -d /etc/h2o -g 101 -M -s /sbin/nologin -u 101 h2o

Adım 3: H2O Web Sunucusunu Yapılandırma

Aşağıdaki adımlar, çeşitli yapılandırma kurulum örneklerini verecektir unencrypted, encrypted, staticve dynamicsunucu kurulumları; ve dördünün bir kombinasyonu.


Yönlendirme http://www.example.comiçin http://example.com(Statik HTML sayfaları, No PHP) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.html' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        file.dir: /var/www/example.com
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "http://example.com/"
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıda listelenen dizin seçeneğine index.htmlşablonu kullanarak bir varsayılan oluşturun ./var/www/htmlfile.dir/var/www/example.com

sudo cp -var /var/www/html /var/www/example.com

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yürütün.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve bu mesajı alacaksınız.


Welcome to H2O - an optimized HTTP server

It works!

Yönlendirme http://example.comiçin http://www.example.com(Statik HTML sayfaları, No PHP) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.html' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "http://www.example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        file.dir: /var/www/www.example.com
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıda listelenen dizin seçeneğinde index.htmlbulunan şablonu kullanarak varsayılan bir dosya oluşturun ./var/www/htmlfile.dir/var/www/www.example.com

sudo cp -var /var/www/html /var/www/www.example.com

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve bu mesajı alacaksınız.


Welcome to H2O - an optimized HTTP server

It works!

Yönlendirme http://www.example.comiçin http://example.com(Dinamik Sayfa PHP-FPM 5.6.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        file.dir: /var/www/example.com
        redirect:
          internal: YES
          status: 307
          url: /index.php
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "http://example.com/"
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-5.6.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

PHP'yi işlemek için PHP-FPM 5.6 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP 5.6.x sürümünü yükleyin.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php56-php-fpm -y

/opt/remi/php56/root/etc/Dizine gidin .

cd /opt/remi/php56/root/etc/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/opt/remi/php56/root/etc/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-5.6-error.log
pid = /var/run/php-fpm-5.6.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-5.6.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/opt/remi/php56/root/var/lib/php/session/"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /opt/remi/php56/root/var/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /opt/remi/php56/root/var/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php56-php-fpm 
sudo systemctl start php56-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Yönlendirme http://example.comiçin http://www.example.com(Dinamik Sayfa PHP-FPM 5.6.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "http://www.example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        file.dir: /var/www/www.example.com
        redirect:
          internal: YES
          status: 307
          url: /index.php
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-5.6.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

PHP'yi işlemek için PHP-FPM 5.6 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP sürüm 5.6.x'i yüklemek için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php56-php-fpm -y

/opt/remi/php56/root/etc/Dizine gidin .

cd /opt/remi/php56/root/etc/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/opt/remi/php56/root/etc/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-5.6-error.log
pid = /var/run/php-fpm-5.6.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-5.6.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/opt/remi/php56/root/var/lib/php/session/"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /opt/remi/php56/root/var/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /opt/remi/php56/root/var/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php56-php-fpm 
sudo systemctl start php56-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/www.example.com

sudo mkdir /var/www/www.example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/www.example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Yönlendirme http://www.example.comiçin http://example.com(Dinamik Sayfa PHP-FPM 7.1.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        file.dir: /var/www/example.com
        redirect:
          internal: YES
          status: 307
          url: /index.php
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "http://example.com/"
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-7.1.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

PHP'yi işlemek için PHP-FPM 7.1 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP 7.1.x sürümünü kurmak için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php71-php-fpm -y

/etc/opt/remi/php71/Dizine gidin .

cd /etc/opt/remi/php71/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/etc/opt/remi/php71/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-7.1-error.log
pid = /var/run/php-fpm-7.1.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-7.1.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/var/opt/remi/php71/lib/php/session/"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /var/opt/remi/php71/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /var/opt/remi/php71/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php71-php-fpm 
sudo systemctl start php71-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Yönlendirme http://example.comiçin http://www.example.com(Dinamik Sayfa PHP-FPM 7.1.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "http://www.example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        file.dir: /var/www/www.example.com
        redirect:
          internal: YES
          status: 307
          url: /index.php
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-7.1.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

PHP'yi işlemek için PHP-FPM 7.1 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP 7.1.x sürümünü kurmak için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php71-php-fpm -y

/etc/opt/remi/php71/Dizine gidin .

cd /etc/opt/remi/php71/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/etc/opt/remi/php71/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-7.1-error.log
pid = /var/run/php-fpm-7.1.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-7.1.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Copy and paste the following text into the new php.ini file. Change the memory\_limit, post\_max\_size, upload\_max\_filesize and date.timezone in accordance with your VPS instance.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/var/opt/remi/php71/lib/php/session"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Change the group ownership for the /var/opt/remi/php71/lib/php/session/ directory from the apache group to the h2o group.

sudo chown root.h2o /var/opt/remi/php71/lib/php/session/

Create a directory where the PHP-FPM server logs will reside.

sudo mkdir /var/log/php-fpm/

Enable and start the PHP-FPM server.

sudo systemctl enable php71-php-fpm 
sudo systemctl start php71-php-fpm

Enable and start the H2O server.

sudo systemctl enable h2o
sudo systemctl start h2o

Create a directory where the default index.php will reside listed by the directory option file.dir above in /var/www/example.com.

sudo mkdir /var/www/www.example.com

Create a default index.php using the phpinfo command to test PHP.

sudo nano /var/www/www.example.com/index.php

Copy and paste the text below in the new index.php file.

<?php
phpinfo();
?>

Now, open your browser and enter the server domain name (example.com or www.example.com) for your instance. Are you getting an Unable to connect or a This site can’t be reached message? CentOS's default firewall setting disallows incoming connections to the http port. Do the following to open it.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --reload

Refresh the page in your browser (F5) and you will get the standard PHP info page.


Redirect http://example.com, http://www.example.com, and https://www.example.com to https://example.com (Static HTML Pages, No PHP) Configuration

Navigate to the /etc/h2o/ directory.

cd /etc/h2o/

Rename the default h2o.conf to h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Create a new h2o.conf file.

sudo nano h2o.conf

Copy and paste the text below into the h2o.conf file.

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.html' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://www.example.com/"
  "example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        file.dir: /var/www/example.com
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
  "www.example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          status: 301
          url: "https://example.com/"
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

Create a custom directory to store the default SSL options for all websites that use SSL.

sudo mkdir conf.d

Create a new ssl.conf file.

sudo nano conf.d/ssl.conf

Copy and paste the following text into the ssl.conf file.

cipher-preference: server
cipher-suite: ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
dh-file: /etc/ssl/h2o/dhparam_2048.pem

Make a directory to store the dhparam_2048.pem file that will be regenerated daily via a cronjob.

sudo mkdir /etc/ssl/h2o/

Create a new regenerate_dhparam file.

sudo nano /etc/cron.daily/regenerate_dhparam

Copy and paste the following text into the regenerate_dhparam file.

#!/bin/bash
cd /etc/ssl/h2o
umask 022
for length in 2048
do
openssl dhparam -out dhparam_$length.tmp $length && mv dhparam_$length.tmp dhparam_$length.pem
chmod 444 dhparam_$length.pem
done

Make the bash file just created executable.

sudo chmod +x /etc/cron.daily/regenerate_dhparam

Execute the bash script for a first run as H2O won't start properly if it's not generated. This will take about a minute or two to generate on first run.

sudo /etc/cron.daily/regenerate_dhparam

Enable and start the H2O server.

sudo systemctl enable h2o
sudo systemctl start h2o

Create a default index.html using the template in /var/www/html to the directory option file.dir listed above in /var/www/example.com.

sudo cp -var /var/www/html /var/www/example.com

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve bu mesajı alacaksınız.


Welcome to H2O - an optimized HTTP server

It works!

Yönlendirme http://example.com, http://www.example.comve https://example.comhiç https://www.example.com(Statik HTML sayfaları, No PHP) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.html' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://www.example.com/"
  "example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          status: 301
          url: "https://www.example.com/"
  "www.example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        file.dir: /var/www/www.example.com
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

SSL kullanan tüm web siteleri için varsayılan SSL seçeneklerini depolamak için özel bir dizin oluşturun.

sudo mkdir conf.d

Yeni bir ssl.confdosya oluşturun .

sudo nano conf.d/ssl.conf

Aşağıdaki metni kopyalayıp ssl.confdosyaya yapıştırın .

cipher-preference: server
cipher-suite: ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
dh-file: /etc/ssl/h2o/dhparam_2048.pem

dhparam_2048.pemBir cronjob yoluyla günlük olarak yeniden oluşturulacak dosyayı saklamak için bir dizin oluşturun .

sudo mkdir /etc/ssl/h2o/

Yeni bir regenerate_dhparamdosya oluşturun .

sudo nano /etc/cron.daily/regenerate_dhparam

Aşağıdaki metni kopyalayıp regenerate_dhparamdosyanın içine yapıştırın .

#!/bin/bash
cd /etc/ssl/h2o
umask 022
for length in 2048
do
openssl dhparam -out dhparam_$length.tmp $length && mv dhparam_$length.tmp dhparam_$length.pem
chmod 444 dhparam_$length.pem
done

Bash dosyasını yeni oluşturulabilir hale getirin.

sudo chmod +x /etc/cron.daily/regenerate_dhparam

İlk çalıştırma için bash betiğini çalıştırın, çünkü H2O oluşturulmamışsa düzgün başlamaz. Bu, ilk çalıştırmada oluşturulması yaklaşık bir veya iki dakika sürer.

sudo /etc/cron.daily/regenerate_dhparam

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıda listelenen dizin seçeneğine index.htmlşablonu kullanarak bir varsayılan oluşturun ./var/www/htmlfile.dir/var/www/www.example.com

sudo cp -var /var/www/html /var/www/www.example.com

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve bu mesajı alacaksınız.


Welcome to H2O - an optimized HTTP server

It works!

Yönlendirme http://example.com, http://www.example.comve https://www.example.comhiç https://example.com(Dinamik Page, PHP-FPM 5.6.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://www.example.com/"
  "example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        file.dir: /var/www/example.com
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          internal: YES
          status: 307
          url: /index.php
  "www.example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          status: 301
          url: "https://example.com/"
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-5.6.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

SSL kullanan tüm web siteleri için varsayılan SSL seçeneklerini depolamak için özel bir dizin oluşturun.

sudo mkdir conf.d

Yeni bir ssl.confdosya oluşturun .

sudo nano conf.d/ssl.conf

Aşağıdaki metni kopyalayıp ssl.confdosyaya yapıştırın .

cipher-preference: server
cipher-suite: ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
dh-file: /etc/ssl/h2o/dhparam_2048.pem

dhparam_2048.pemBir cronjob yoluyla günlük olarak yeniden oluşturulacak dosyayı saklamak için bir dizin oluşturun .

sudo mkdir /etc/ssl/h2o/

Yeni bir regenerate_dhparamdosya oluşturun .

sudo nano /etc/cron.daily/regenerate_dhparam

Aşağıdaki metni kopyalayıp regenerate_dhparamdosyanın içine yapıştırın .

#!/bin/bash
cd /etc/ssl/h2o
umask 022
for length in 2048
do
openssl dhparam -out dhparam_$length.tmp $length && mv dhparam_$length.tmp dhparam_$length.pem
chmod 444 dhparam_$length.pem
done

Bash dosyasını yeni oluşturulabilir hale getirin.

sudo chmod +x /etc/cron.daily/regenerate_dhparam

İlk çalıştırma için bash betiğini çalıştırın, çünkü H2O oluşturulmamışsa düzgün başlamaz. Bu, ilk çalıştırmada oluşturulması yaklaşık bir veya iki dakika sürer.

sudo /etc/cron.daily/regenerate_dhparam

PHP'yi işlemek için PHP-FPM 5.6 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP sürüm 5.6.x'i yüklemek için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php56-php-fpm -y

/opt/remi/php56/root/etc/Dizine gidin .

cd /opt/remi/php56/root/etc/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/opt/remi/php56/root/etc/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-5.6-error.log
pid = /var/run/php-fpm-5.6.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-5.6.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/opt/remi/php56/root/var/lib/php/session/"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /opt/remi/php56/root/var/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /opt/remi/php56/root/var/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php56-php-fpm 
sudo systemctl start php56-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Yönlendirme http://example.com, http://www.example.comve https://example.comhiç https://www.example.com(Dinamik Page, PHP-FPM 5.6.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://www.example.com/"
  "example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          status: 301
          url: "https://www.example.com/"
  "www.example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        file.dir: /var/www/www.example.com
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          internal: YES
          status: 307
          url: /index.php
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-5.6.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

SSL kullanan tüm web siteleri için varsayılan SSL seçeneklerini depolamak için özel bir dizin oluşturun.

sudo mkdir conf.d

Yeni bir ssl.confdosya oluşturun .

sudo nano conf.d/ssl.conf

Aşağıdaki metni kopyalayıp ssl.confdosyaya yapıştırın .

cipher-preference: server
cipher-suite: ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
dh-file: /etc/ssl/h2o/dhparam_2048.pem

dhparam_2048.pemBir cronjob yoluyla günlük olarak yeniden oluşturulacak dosyayı saklamak için bir dizin oluşturun .

sudo mkdir /etc/ssl/h2o/

Yeni bir regenerate_dhparamdosya oluşturun .

sudo nano /etc/cron.daily/regenerate_dhparam

Aşağıdaki metni kopyalayıp regenerate_dhparamdosyanın içine yapıştırın .

#!/bin/bash
cd /etc/ssl/h2o
umask 022
for length in 2048
do
openssl dhparam -out dhparam_$length.tmp $length && mv dhparam_$length.tmp dhparam_$length.pem
chmod 444 dhparam_$length.pem
done

Bash dosyasını yeni oluşturulabilir hale getirin.

sudo chmod +x /etc/cron.daily/regenerate_dhparam

İlk çalıştırma için bash betiğini çalıştırın, çünkü H2O oluşturulmamışsa düzgün başlamaz. Bu, ilk çalıştırmada oluşturulması yaklaşık bir veya iki dakika sürer.

sudo /etc/cron.daily/regenerate_dhparam

PHP'yi işlemek için PHP-FPM 5.6 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP sürüm 5.6.x'i yüklemek için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php56-php-fpm -y

/opt/remi/php56/root/etc/Dizine gidin .

cd /opt/remi/php56/root/etc/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/opt/remi/php56/root/etc/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-5.6-error.log
pid = /var/run/php-fpm-5.6.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-5.6.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/opt/remi/php56/root/var/lib/php/session/"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /opt/remi/php56/root/var/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /opt/remi/php56/root/var/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php56-php-fpm 
sudo systemctl start php56-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/www.example.com

sudo mkdir /var/www/www.example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/www.example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve example.com or www.example.comörneğiniz için sunucu alan adını ( ) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Yönlendirme http://example.com, http://www.example.comve https://www.example.comhiç https://example.com(Dinamik Page, PHP-FPM 7.1.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://www.example.com/"
  "example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        file.dir: /var/www/example.com
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          internal: YES
          status: 307
          url: /index.php
  "www.example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          status: 301
          url: "https://example.com/"
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-7.1.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

SSL kullanan tüm web siteleri için varsayılan SSL seçeneklerini depolamak için özel bir dizin oluşturun.

sudo mkdir conf.d

Yeni bir ssl.confdosya oluşturun .

sudo nano conf.d/ssl.conf

Aşağıdaki metni kopyalayıp ssl.confdosyaya yapıştırın .

cipher-preference: server
cipher-suite: ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
dh-file: /etc/ssl/h2o/dhparam_2048.pem

dhparam_2048.pemBir cronjob yoluyla günlük olarak yeniden oluşturulacak dosyayı saklamak için bir dizin oluşturun .

sudo mkdir /etc/ssl/h2o/

Yeni bir regenerate_dhparamdosya oluşturun .

sudo nano /etc/cron.daily/regenerate_dhparam

Aşağıdaki metni kopyalayıp regenerate_dhparamdosyanın içine yapıştırın .

#!/bin/bash
cd /etc/ssl/h2o
umask 022
for length in 2048
do
openssl dhparam -out dhparam_$length.tmp $length && mv dhparam_$length.tmp dhparam_$length.pem
chmod 444 dhparam_$length.pem
done

Bash dosyasını yeni oluşturulabilir hale getirin.

sudo chmod +x /etc/cron.daily/regenerate_dhparam

İlk çalıştırma için bash betiğini çalıştırın, çünkü H2O oluşturulmamışsa düzgün başlamaz. Bu, ilk çalıştırmada oluşturulması yaklaşık bir veya iki dakika sürer.

sudo /etc/cron.daily/regenerate_dhparam

PHP'yi işlemek için PHP-FPM 7.1 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP 7.1.x sürümünü kurmak için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php71-php-fpm -y

/etc/opt/remi/php71/Dizine gidin .

cd /etc/opt/remi/php71/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/etc/opt/remi/php71/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-7.1-error.log
pid = /var/run/php-fpm-7.1.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-7.1.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/var/opt/remi/php71/lib/php/session/"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /var/opt/remi/php71/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /var/opt/remi/php71/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php71-php-fpm 
sudo systemctl start php71-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Yönlendirme http://example.com, http://www.example.comve https://example.comhiç https://www.example.com(Dinamik Page, PHP-FPM 7.1.x) Yapılandırma

/etc/h2o/Dizine gidin .

cd /etc/h2o/

Varsayılan yeniden adlandırma h2o.confiçin h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

Yeni bir h2o.confdosya oluşturun .

sudo nano h2o.conf

Aşağıdaki metni kopyalayıp h2o.confdosyaya yapıştırın .

access-log: /var/log/h2o/access.log
compress: ON
error-log: /var/log/h2o/error.log
expires: 1 day
file.index: [ 'index.php' ]
hosts:
  "example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://example.com/"
  "www.example.com:80":
    listen:
      port: 80
    paths:
      "/":
        redirect:
          status: 301
          url: "https://www.example.com/"
  "example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          status: 301
          url: "https://www.example.com/"
  "www.example.com:443":
    listen:
      port: 443
      ssl:
        <<: !file /etc/h2o/conf.d/ssl.conf
        certificate-file: /location/of/certificate/file/fullchain.ext
        key-file: /location/of/private/key/file/privkey.ext
    paths:
      "/":
        file.dir: /var/www/www.example.com
        header.add: "strict-transport-security: max-age=31536000; includeSubDomains; preload"
        redirect:
          internal: YES
          status: 307
          url: /index.php
file.custom-handler:
  extension: .php
  fastcgi.connect:
    port: /run/php-fpm-7.1.sock
    type: unix
pid-file: /var/run/h2o/h2o.pid
send-server-name: OFF
setenv:
  HTTP_PROXY: ""
user: h2o

SSL kullanan tüm web siteleri için varsayılan SSL seçeneklerini depolamak için özel bir dizin oluşturun.

sudo mkdir conf.d

Yeni bir ssl.confdosya oluşturun .

sudo nano conf.d/ssl.conf

Aşağıdaki metni kopyalayıp ssl.confdosyaya yapıştırın .

cipher-preference: server
cipher-suite: ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
dh-file: /etc/ssl/h2o/dhparam_2048.pem

dhparam_2048.pemBir cronjob yoluyla günlük olarak yeniden oluşturulacak dosyayı saklamak için bir dizin oluşturun .

sudo mkdir /etc/ssl/h2o/

Yeni bir regenerate_dhparamdosya oluşturun .

sudo nano /etc/cron.daily/regenerate_dhparam

Aşağıdaki metni kopyalayıp regenerate_dhparamdosyanın içine yapıştırın .

#!/bin/bash
cd /etc/ssl/h2o
umask 022
for length in 2048
do
openssl dhparam -out dhparam_$length.tmp $length && mv dhparam_$length.tmp dhparam_$length.pem
chmod 444 dhparam_$length.pem
done

Bash dosyasını yeni oluşturulabilir hale getirin.

sudo chmod +x /etc/cron.daily/regenerate_dhparam

İlk çalıştırma için bash betiğini çalıştırın, çünkü H2O oluşturulmamışsa düzgün başlamaz. Bu, ilk çalıştırmada oluşturulması yaklaşık bir veya iki dakika sürer.

sudo /etc/cron.daily/regenerate_dhparam

PHP'yi işlemek için PHP-FPM 7.1 arka plan programının yüklenmiş ve yapılandırılmış olması gerekir. Varsayılan 5.4.x sürümünden daha yeni bir PHP-FPM sürümü yüklemek için, PHP 5.6.x, 7.0.x ve 7.1.x sürümlerini içeren REMI deposunun yüklenmesi gerekir. PHP 7.1.x sürümünü kurmak için aşağıdaki komutları yazın.

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install php71-php-fpm -y

/etc/opt/remi/php71/Dizine gidin .

cd /etc/opt/remi/php71/

Varsayılan yeniden adlandırma php-fpm.confiçin php-fpm.conf.original.

sudo mv php-fpm.conf php-fpm.conf.original

Yeni bir php-fpm.confdosya oluşturun .

sudo nano php-fpm.conf

Aşağıdaki metni kopyalayıp php-fpm.confdosyaya yapıştırın .

include=/etc/opt/remi/php71/php-fpm.d/*.conf
[global]
daemonize = yes
emergency_restart_threshold = 2
emergency_restart_interval = 1m
error_log = /var/log/php-fpm/php-fpm-7.1-error.log
pid = /var/run/php-fpm-7.1.pid
process_control_timeout = 10s

Dizindeki varsayılan www.confdosyayı yeniden adlandırın php-fpm.d.

sudo mv php-fpm.d/www.conf php-fpm.d/www.conf.original

Yeni bir www.confdosya oluşturun .

sudo nano php-fpm.d/www.conf

Aşağıdaki metni kopyalayıp www.confdosyaya yapıştırın . pm.max\_childrenVPS örneğinize göre CPU sayısıyla eşleşecek şekilde değiştirin .

[www]
group = h2o
listen = /var/run/php-fpm-7.1.sock
listen.backlog = 65536
listen.owner = h2o
listen.group = h2o
pm = static
pm.max_children = 2
pm.max_requests = 10240
user = h2o

Varsayılan php.inidosyayı yeniden adlandırın .

sudo mv php.ini php.ini.original

Yeni bir php.inidosya oluşturun .

sudo nano php.ini

Aşağıdaki metni kopyalayıp yenisine yapıştırın php.ini file. Değişim memory\_limit, post\_max\_size, upload\_max\_filesizeve date.timezonesenin VPS örneği ile giriş uyumunu.

[PHP]
allow_url_fopen = On
always_populate_raw_post_data = -1
display_errors = Off
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
expose_php = Off
log_errors = On
memory_limit = 256M
output_buffering = 4096
post_max_size = 64M
register_argc_argv = Off
request_order = "GP"
upload_max_filesize = 64M
variables_order = "GPCS"
[Date]
date.timezone = America/New_York
[Session]
session.cache_limiter =
session.gc_divisor = 1000
session.hash_bits_per_character = 5
session.save_handler = files
session.save_path = "/var/opt/remi/php71/lib/php/session"
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"

Grup sahipliğini değiştirme /var/opt/remi/php71/lib/php/session/dan dizine apachegrubun h2ogrubunda.

sudo chown root.h2o /var/opt/remi/php71/lib/php/session/

PHP-FPM sunucusu günlüklerinin yer alacağı bir dizin oluşturun.

sudo mkdir /var/log/php-fpm/

PHP-FPM sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable php71-php-fpm 
sudo systemctl start php71-php-fpm

H2O sunucusunu etkinleştirin ve başlatın.

sudo systemctl enable h2o
sudo systemctl start h2o

Yukarıdaki index.phpdizin seçeneği tarafından listelenen varsayılanın yer alacağı bir dizin oluşturun .file.dir/var/www/example.com

sudo mkdir /var/www/www.example.com

PHP'yi test etmek index.phpiçin phpinfokomutu kullanarak bir varsayılan oluşturun .

sudo nano /var/www/www.example.com/index.php

Aşağıdaki metni kopyalayıp yeni index.phpdosyaya yapıştırın .

<?php
phpinfo();
?>

Şimdi tarayıcınızı açın ve örneğiniz için sunucu alan adını ( example.comveya www.example.com) girin . Bir alıyorsunuz Unable to connectveya This site can’t be reachedmesaj? CentOS'un varsayılan güvenlik duvarı ayarı, http bağlantı noktasına gelen bağlantıları devre dışı bırakır. Açmak için aşağıdakileri yapın.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Tarayıcınızda sayfayı yenileyin ( F5) ve standart PHP bilgi sayfasını alacaksınız.


Bu benim öğretici sonucum. Okuduğunuz için teşekkürler.

Yorum bırak

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.