CentOS 7에 H2O 웹 서버 설치

H2O는 사용중인 모든 현재 웹 서버에 대해 완벽하게 기능을 갖춘 HTTP / 2 구현을 갖춘 차세대 HTTP 서버입니다. 웹 서버로 H2O를 사용하면 거의 사용하지 않는 최신 브라우저 기능을 활용할 수있는 대기 시간 최적화, 서버 푸시 및 서버 측 우선 순위 지정과 같은 HTTP / 2 사양의 새로운 기능을 활용할 수 있습니다.

이 자세한 자습서에서는 CentOS 7 x64 인스턴스에서 H2O를 실행하는 방법을 단계별로 보여줍니다.

전제 조건

  • CentOS 7 x64 서버 인스턴스
  • sudo는 사용자.
  • SSL 인증서 (선택 사항)

1 단계 : 시스템 업데이트

인스턴스 아래에있는 자격 증명으로 SSH를 통해 로그인하고 다음과 같이 시스템을 업데이트하십시오.

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

2 단계 : H2O 설치

CentOS 7에 H2O를 설치하려면 사전 빌드 된 H2O 바이너리를 설치하기 위해 Bintray RPM 저장소를 추가해야합니다. Nano 편집기를 사용하여 사용자 정의 저장소를 작성하십시오.

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

아래 텍스트를 복사하여 repo 파일에 붙여 넣습니다.

[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

그런 다음 H2O를 설치하십시오.

sudo yum install h2o -y

이제 H2O가 설치되었지만 서비스를 활성화하고 시작하기 전에 적절한 구성이 필요하며 H2O를 실행할 특정 사용자 및 그룹을 작성해야합니다. named에서 H2O를 실행할 그룹 및 사용자를 작성하십시오 h2o.

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

3 단계 : H2O 웹 서버 구성

다음 단계는 다양한에 대한 구성 설정의 예를 줄 것이다 unencrypted, encrypted, staticdynamic서버 설정을; 뿐만 아니라 네 가지의 조합.


리디렉션 http://www.example.com으로 http://example.com(정적 HTML 페이지, 아니 PHP) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

위에 나열된 디렉토리 옵션 에 index.html템플리트를 사용하여 기본값 을 작성하십시오 ./var/www/htmlfile.dir/var/www/example.com

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

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 다음을 실행하여 엽니 다.

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

브라우저에서 페이지를 새로 고치면 ( F5)이 메시지가 나타납니다.


Welcome to H2O - an optimized HTTP server

It works!

리디렉션 http://example.com으로 http://www.example.com(정적 HTML 페이지, 아니 PHP) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

다음 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

위에 나열된 디렉토리 옵션 에 index.html템플리트를 사용하여 기본 파일을 작성하십시오 ./var/www/htmlfile.dir/var/www/www.example.com

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

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5)이 메시지가 나타납니다.


Welcome to H2O - an optimized HTTP server

It works!

리디렉션 http://www.example.com으로 http://example.com(동적 페이지, PHP-FPM 5.6.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

다음 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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를 처리하려면 PHP-FPM 5.6 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 5.6.x를 설치하십시오.

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/디렉토리로 이동하십시오 .

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

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

아래 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

아래 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

아래 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /opt/remi/php56/root/var/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?php
phpinfo();
?>

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5) 표준 PHP 정보 페이지가 표시됩니다.


리디렉션 http://example.com으로 http://www.example.com(동적 페이지, PHP-FPM 5.6.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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를 처리하려면 PHP-FPM 5.6 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 5.6.x를 설치하려면 다음 명령을 입력하십시오.

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/디렉토리로 이동하십시오 .

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

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

아래 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

다음 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

아래 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /opt/remi/php56/root/var/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/www.example.com

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

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?php
phpinfo();
?>

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5) 표준 PHP 정보 페이지가 표시됩니다.


리디렉션 http://www.example.com으로 http://example.com(동적 페이지, PHP-FPM 7.1.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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를 처리하려면 PHP-FPM 7.1 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 7.1.x를 설치하려면 아래 명령을 입력하십시오.

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

/etc/opt/remi/php71/디렉토리로 이동하십시오 .

cd /etc/opt/remi/php71/

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

다음 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

아래 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

Copy and paste the text below 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/example.com

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

sudo nano /var/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 To http://www.example.com (Dynamic Page, PHP-FPM 7.1.x) 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.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를 처리하려면 PHP-FPM 7.1 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 7.1.x를 설치하려면 아래 명령을 입력하십시오.

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

/etc/opt/remi/php71/디렉토리로 이동하십시오 .

cd /etc/opt/remi/php71/

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

아래 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

다음 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

다음 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /var/opt/remi/php71/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/example.com

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

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?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

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5)이 메시지가 나타납니다.


Welcome to H2O - an optimized HTTP server

It works!

리디렉션 http://example.com, http://www.example.com그리고 https://example.comhttps://www.example.com(정적 HTML 페이지, 아니 PHP) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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을 사용하는 모든 웹 사이트의 기본 SSL 옵션을 저장할 사용자 정의 디렉토리를 작성하십시오.

sudo mkdir conf.d

ssl.conf파일을 작성 하십시오.

sudo nano conf.d/ssl.conf

다음 텍스트를 복사하여 ssl.conf파일에 붙여 넣습니다 .

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.pemcronjob을 통해 매일 재생성 될 파일 을 저장할 디렉토리를 작성하십시오 .

sudo mkdir /etc/ssl/h2o/

regenerate_dhparam파일을 작성 하십시오.

sudo nano /etc/cron.daily/regenerate_dhparam

regenerate_dhparam파일 안에 다음 텍스트를 복사하여 붙여 넣습니다 .

#!/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 파일을 방금 만든 실행 파일로 만듭니다.

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

H2O가 생성되지 않으면 H2O가 제대로 시작되지 않으므로 첫 번째 실행에 대해 bash 스크립트를 실행하십시오. 처음 실행시 약 1 ~ 2 분이 소요됩니다.

sudo /etc/cron.daily/regenerate_dhparam

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

위에 나열된 디렉토리 옵션 에 index.html템플리트를 사용하여 기본값 을 작성하십시오 ./var/www/htmlfile.dir/var/www/www.example.com

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

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5)이 메시지가 나타납니다.


Welcome to H2O - an optimized HTTP server

It works!

리디렉션 http://example.com, http://www.example.com그리고 https://www.example.comhttps://example.com(동적 페이지, PHP-FPM의 5.6.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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을 사용하는 모든 웹 사이트의 기본 SSL 옵션을 저장할 사용자 정의 디렉토리를 작성하십시오.

sudo mkdir conf.d

ssl.conf파일을 작성 하십시오.

sudo nano conf.d/ssl.conf

아래 텍스트를 복사하여 ssl.conf파일에 붙여 넣습니다 .

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.pemcronjob을 통해 매일 재생성 될 파일 을 저장할 디렉토리를 작성하십시오 .

sudo mkdir /etc/ssl/h2o/

regenerate_dhparam파일을 작성 하십시오.

sudo nano /etc/cron.daily/regenerate_dhparam

regenerate_dhparam파일 안에 다음 텍스트를 복사하여 붙여 넣습니다 .

#!/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 파일을 방금 만든 실행 파일로 만듭니다.

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

H2O가 생성되지 않으면 H2O가 제대로 시작되지 않으므로 첫 번째 실행에 대해 bash 스크립트를 실행하십시오. 처음 실행시 약 1 ~ 2 분이 소요됩니다.

sudo /etc/cron.daily/regenerate_dhparam

PHP를 처리하려면 PHP-FPM 5.6 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 5.6.x를 설치하려면 다음 명령을 입력하십시오.

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/디렉토리로 이동하십시오 .

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

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

다음 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

아래 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

아래 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /opt/remi/php56/root/var/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?php
phpinfo();
?>

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5) 표준 PHP 정보 페이지가 표시됩니다.


리디렉션 http://example.com, http://www.example.com그리고 https://example.comhttps://www.example.com(동적 페이지, PHP-FPM의 5.6.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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을 사용하는 모든 웹 사이트의 기본 SSL 옵션을 저장할 사용자 정의 디렉토리를 작성하십시오.

sudo mkdir conf.d

ssl.conf파일을 작성 하십시오.

sudo nano conf.d/ssl.conf

아래 텍스트를 복사하여 ssl.conf파일에 붙여 넣습니다 .

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.pemcronjob을 통해 매일 재생성 될 파일 을 저장할 디렉토리를 작성하십시오 .

sudo mkdir /etc/ssl/h2o/

regenerate_dhparam파일을 작성 하십시오.

sudo nano /etc/cron.daily/regenerate_dhparam

regenerate_dhparam파일 안에 다음 텍스트를 복사하여 붙여 넣습니다 .

#!/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 파일을 방금 만든 실행 파일로 만듭니다.

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

H2O가 생성되지 않으면 H2O가 제대로 시작되지 않으므로 첫 번째 실행에 대해 bash 스크립트를 실행하십시오. 처음 실행시 약 1 ~ 2 분이 소요됩니다.

sudo /etc/cron.daily/regenerate_dhparam

PHP를 처리하려면 PHP-FPM 5.6 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 5.6.x를 설치하려면 다음 명령을 입력하십시오.

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/디렉토리로 이동하십시오 .

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

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

아래 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

아래 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

다음 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /opt/remi/php56/root/var/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/www.example.com

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

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?php
phpinfo();
?>

이제 브라우저를 열고 example.com or www.example.com인스턴스 의 서버 도메인 이름 ( )을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5) 표준 PHP 정보 페이지가 표시됩니다.


리디렉션 http://example.com, http://www.example.com그리고 https://www.example.comhttps://example.com(동적 페이지, PHP-FPM의 7.1.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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을 사용하는 모든 웹 사이트의 기본 SSL 옵션을 저장할 사용자 정의 디렉토리를 작성하십시오.

sudo mkdir conf.d

ssl.conf파일을 작성 하십시오.

sudo nano conf.d/ssl.conf

아래 텍스트를 복사하여 ssl.conf파일에 붙여 넣습니다 .

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.pemcronjob을 통해 매일 재생성 될 파일 을 저장할 디렉토리를 작성하십시오 .

sudo mkdir /etc/ssl/h2o/

regenerate_dhparam파일을 작성 하십시오.

sudo nano /etc/cron.daily/regenerate_dhparam

regenerate_dhparam파일 안에 다음 텍스트를 복사하여 붙여 넣습니다 .

#!/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 파일을 방금 만든 실행 파일로 만듭니다.

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

H2O가 생성되지 않으면 H2O가 제대로 시작되지 않으므로 첫 번째 실행에 대해 bash 스크립트를 실행하십시오. 처음 실행시 약 1 ~ 2 분이 소요됩니다.

sudo /etc/cron.daily/regenerate_dhparam

PHP를 처리하려면 PHP-FPM 7.1 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 7.1.x를 설치하려면 아래 명령을 입력하십시오.

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

/etc/opt/remi/php71/디렉토리로 이동하십시오 .

cd /etc/opt/remi/php71/

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

아래 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

다음 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

아래 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /var/opt/remi/php71/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/example.com

sudo mkdir /var/www/example.com

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?php
phpinfo();
?>

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5) 표준 PHP 정보 페이지가 표시됩니다.


리디렉션 http://example.com, http://www.example.com그리고 https://example.comhttps://www.example.com(동적 페이지, PHP-FPM의 7.1.x) 구성

/etc/h2o/디렉토리로 이동하십시오 .

cd /etc/h2o/

기본값 h2o.conf을로 바꿉니다 h2o.conf.original.

sudo mv h2o.conf h2o.conf.original

h2o.conf파일을 작성 하십시오.

sudo nano h2o.conf

아래 텍스트를 복사하여 h2o.conf파일에 붙여 넣습니다 .

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을 사용하는 모든 웹 사이트의 기본 SSL 옵션을 저장할 사용자 정의 디렉토리를 작성하십시오.

sudo mkdir conf.d

ssl.conf파일을 작성 하십시오.

sudo nano conf.d/ssl.conf

아래 텍스트를 복사하여 ssl.conf파일에 붙여 넣습니다 .

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.pemcronjob을 통해 매일 재생성 될 파일 을 저장할 디렉토리를 작성하십시오 .

sudo mkdir /etc/ssl/h2o/

regenerate_dhparam파일을 작성 하십시오.

sudo nano /etc/cron.daily/regenerate_dhparam

regenerate_dhparam파일 안에 다음 텍스트를 복사하여 붙여 넣습니다 .

#!/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 파일을 방금 만든 실행 파일로 만듭니다.

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

H2O가 생성되지 않으면 H2O가 제대로 시작되지 않으므로 첫 번째 실행에 대해 bash 스크립트를 실행하십시오. 처음 실행시 약 1 ~ 2 분이 소요됩니다.

sudo /etc/cron.daily/regenerate_dhparam

PHP를 처리하려면 PHP-FPM 7.1 데몬을 설치하고 구성해야합니다. 기본 5.4.x보다 최신 버전의 PHP-FPM을 설치하려면 PHP 버전 5.6.x, 7.0.x 및 7.1.x가 포함 된 REMI repo를 설치해야합니다. PHP 버전 7.1.x를 설치하려면 다음 명령을 입력하십시오.

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

/etc/opt/remi/php71/디렉토리로 이동하십시오 .

cd /etc/opt/remi/php71/

기본값 php-fpm.conf을로 바꿉니다 php-fpm.conf.original.

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

php-fpm.conf파일을 작성 하십시오.

sudo nano php-fpm.conf

다음 텍스트를 복사하여 php-fpm.conf파일에 붙여 넣습니다 .

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

디렉토리 www.conf에서 기본 파일의 이름을 바꾸십시오 php-fpm.d.

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

www.conf파일을 작성 하십시오.

sudo nano php-fpm.d/www.conf

아래 텍스트를 복사하여 www.conf파일에 붙여 넣습니다 . pm.max\_childrenVPS 인스턴스에 따라 CPU 수와 일치하도록 변경하십시오 .

[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

기본 php.ini파일의 이름을 바꾸십시오 .

sudo mv php.ini php.ini.original

php.ini파일을 작성 하십시오.

sudo nano php.ini

아래 텍스트를 복사하여 새 텍스트에 붙여 넣습니다 php.ini file. 변경 memory\_limit, post\_max\_size, upload\_max\_filesizedate.timezone당신의 VPS의 인스턴스에 따라 있습니다.

[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"

의 그룹 소유권 변경 /var/opt/remi/php71/lib/php/session/로부터 디렉토리 apache받는 그룹 h2o그룹.

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

PHP-FPM 서버 로그가 상주 할 디렉토리를 작성하십시오.

sudo mkdir /var/log/php-fpm/

PHP-FPM 서버를 활성화하고 시작하십시오.

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

H2O 서버를 활성화하고 시작하십시오.

sudo systemctl enable h2o
sudo systemctl start h2o

index.php의 디렉토리 옵션으로 나열된 기본값 이 있는 디렉토리를 작성하십시오 .file.dir/var/www/example.com

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

명령을 index.php사용하여 phpinfoPHP를 테스트 하여 기본값 을 작성하십시오 .

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

아래 텍스트를 복사하여 새 index.php파일 에 붙여 넣습니다 .

<?php
phpinfo();
?>

이제 브라우저를 열고 인스턴스 의 서버 도메인 이름 ( example.com또는 www.example.com)을 입력하십시오. 당신은 점점 Unable to connect또는 This site can’t be reached메시지를? CentOS의 기본 방화벽 설정은 http 포트로 들어오는 연결을 허용하지 않습니다. 열려면 다음을 수행하십시오.

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

브라우저에서 페이지를 새로 고치면 ( F5) 표준 PHP 정보 페이지가 표시됩니다.


이것으로 튜토리얼을 마치겠습니다. 읽어 주셔서 감사합니다.

댓글 남기기

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 Vultr 시스템과 호환되는 Windows 사용자 지정 ISO를 만드는 방법을 단계별로 설명합니다. 최신 드라이버와 업데이트 통합을 포함한 완벽 가이드.

Vultr에서 BGP 구성

Vultr에서 BGP 구성

Vultr BGP 설정을 위한 단계별 튜토리얼. ASN 할당부터 IP 라우팅 구성, BIRD 데몬 설정, FreeBSD 특이사항 및 실전 문제 해결 팁 7가지 포함한 최종 가이드

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WebDAV (Web Distributed Authoring and Versioning)를 이용한 원격 파일 작성을 위한 프레임워크로, WsgiDAV 설치 및 구성 방법을 안내합니다.

데비안 7에 Mailcow 설치

데비안 7에 Mailcow 설치

Mailcow는 DoveCot, Postfix 및 기타 여러 오픈 소스 패키지를 기반으로 하는 경량 메일 서버입니다. 데비안에서 Mailcow 설치 방법을 안내합니다.

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.

ReactOS: 이것이 Windows의 미래입니까?

ReactOS: 이것이 Windows의 미래입니까?

오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구