EC2의 nginx와 PHP7.4를 연계
Appache와 달리 약간의 설정이 필요했기 때문에 절차를 정리해 보겠습니다.
(
Amazon Linux 2
에서 설정하는 방법입니다.)nginx 설정
/etc/nginx/nginx.conf
에 php를 설정합니다.
$sudo vi /etc/nginx/nginx.conf
server {
listen 80;
listen [::]:80;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include fastcgi_params;
}
}
php-fpm 설정 #1
/etc/opt/remi/php74/php-fpm.d/www.conf
에 nginx 와 연동하기 위한 설정을 실시합니다 (5 개소, 설정을 실시합니다).
$sudo vi /etc/opt/remi/php74/php-fpm.d/www.conf
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
php-fpm 설정 #2
/etc/nginx/conf.d/php-fpm.conf
로 설정합니다.
$sudo vi /etc/nginx/conf.d/php-fpm.conf
upstream php-fpm {
server unix:/var/run/php-fpm/php-fpm.sock;
}
sock 파일에 대한 설정
php-fpm에서는 위의 /var/run/php-fpm/php-fpm.sock
파일을 시작할 때 만듭니다.Amazon Linux 2
에서는, 재기동하면 /var/run
디렉토리가 리셋 되고 있으므로, 기동시에 /var/run/php-fpm
를 자동 생성하는 스크립트를 설정합니다.
$sudo vi /etc/tmpfiles.d/php-fpm-run.conf
d /var/run/php-fpm 0755 root root
php-fpm 시작
다음 명령으로 php-fpm을 시작합니다.
$sudo systemctl start php74-php-fpm.service
php-fpm 확인
다음 명령을 사용하여 php-fpm의 상태를 확인합니다.active(running)
가 되어 있으면, 정상적으로 기동하고 있습니다.
$sudo systemctl status php74-php-fpm.service
● php74-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php74-php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Mo 2020-07-20 21:13:23 UTC; 36min ago
Main PID: 24651 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 1, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php74-php-fpm.service
├─24651 php-fpm: master process (/etc/opt/remi/php74/php-fpm.conf)
├─24652 php-fpm: pool www
├─24653 php-fpm: pool www
├─24654 php-fpm: pool www
├─24655 php-fpm: pool www
└─24656 php-fpm: pool www
phpinfo()에서 php가 움직이고 있는지 확인
phpinfo를 호출하는 파일을 만들고 nginx 홈 디렉토리 ( /usr/share/nginx/html
)에 넣습니다.
$sudo vi info.php
<?php phpinfo(); ?>
브라우저에서 액세스하고 다음 화면이 표시되면 nginx에서 php가 정상적으로 실행되고 있습니다.
이것으로 nginx와 PHP7.4의 연계 설정이 완료되었습니다.
Reference
이 문제에 관하여(EC2의 nginx와 PHP7.4를 연계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Hide-Zaemon/items/22485d478bddc0fe02aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$sudo vi /etc/nginx/nginx.conf
server {
listen 80;
listen [::]:80;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include fastcgi_params;
}
}
/etc/opt/remi/php74/php-fpm.d/www.conf
에 nginx 와 연동하기 위한 설정을 실시합니다 (5 개소, 설정을 실시합니다).$sudo vi /etc/opt/remi/php74/php-fpm.d/www.conf
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
php-fpm 설정 #2
/etc/nginx/conf.d/php-fpm.conf
로 설정합니다.
$sudo vi /etc/nginx/conf.d/php-fpm.conf
upstream php-fpm {
server unix:/var/run/php-fpm/php-fpm.sock;
}
sock 파일에 대한 설정
php-fpm에서는 위의 /var/run/php-fpm/php-fpm.sock
파일을 시작할 때 만듭니다.Amazon Linux 2
에서는, 재기동하면 /var/run
디렉토리가 리셋 되고 있으므로, 기동시에 /var/run/php-fpm
를 자동 생성하는 스크립트를 설정합니다.
$sudo vi /etc/tmpfiles.d/php-fpm-run.conf
d /var/run/php-fpm 0755 root root
php-fpm 시작
다음 명령으로 php-fpm을 시작합니다.
$sudo systemctl start php74-php-fpm.service
php-fpm 확인
다음 명령을 사용하여 php-fpm의 상태를 확인합니다.active(running)
가 되어 있으면, 정상적으로 기동하고 있습니다.
$sudo systemctl status php74-php-fpm.service
● php74-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php74-php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Mo 2020-07-20 21:13:23 UTC; 36min ago
Main PID: 24651 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 1, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php74-php-fpm.service
├─24651 php-fpm: master process (/etc/opt/remi/php74/php-fpm.conf)
├─24652 php-fpm: pool www
├─24653 php-fpm: pool www
├─24654 php-fpm: pool www
├─24655 php-fpm: pool www
└─24656 php-fpm: pool www
phpinfo()에서 php가 움직이고 있는지 확인
phpinfo를 호출하는 파일을 만들고 nginx 홈 디렉토리 ( /usr/share/nginx/html
)에 넣습니다.
$sudo vi info.php
<?php phpinfo(); ?>
브라우저에서 액세스하고 다음 화면이 표시되면 nginx에서 php가 정상적으로 실행되고 있습니다.
이것으로 nginx와 PHP7.4의 연계 설정이 완료되었습니다.
Reference
이 문제에 관하여(EC2의 nginx와 PHP7.4를 연계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Hide-Zaemon/items/22485d478bddc0fe02aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$sudo vi /etc/nginx/conf.d/php-fpm.conf
upstream php-fpm {
server unix:/var/run/php-fpm/php-fpm.sock;
}
php-fpm에서는 위의
/var/run/php-fpm/php-fpm.sock
파일을 시작할 때 만듭니다.Amazon Linux 2
에서는, 재기동하면 /var/run
디렉토리가 리셋 되고 있으므로, 기동시에 /var/run/php-fpm
를 자동 생성하는 스크립트를 설정합니다.$sudo vi /etc/tmpfiles.d/php-fpm-run.conf
d /var/run/php-fpm 0755 root root
php-fpm 시작
다음 명령으로 php-fpm을 시작합니다.
$sudo systemctl start php74-php-fpm.service
php-fpm 확인
다음 명령을 사용하여 php-fpm의 상태를 확인합니다.active(running)
가 되어 있으면, 정상적으로 기동하고 있습니다.
$sudo systemctl status php74-php-fpm.service
● php74-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php74-php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Mo 2020-07-20 21:13:23 UTC; 36min ago
Main PID: 24651 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 1, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php74-php-fpm.service
├─24651 php-fpm: master process (/etc/opt/remi/php74/php-fpm.conf)
├─24652 php-fpm: pool www
├─24653 php-fpm: pool www
├─24654 php-fpm: pool www
├─24655 php-fpm: pool www
└─24656 php-fpm: pool www
phpinfo()에서 php가 움직이고 있는지 확인
phpinfo를 호출하는 파일을 만들고 nginx 홈 디렉토리 ( /usr/share/nginx/html
)에 넣습니다.
$sudo vi info.php
<?php phpinfo(); ?>
브라우저에서 액세스하고 다음 화면이 표시되면 nginx에서 php가 정상적으로 실행되고 있습니다.
이것으로 nginx와 PHP7.4의 연계 설정이 완료되었습니다.
Reference
이 문제에 관하여(EC2의 nginx와 PHP7.4를 연계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Hide-Zaemon/items/22485d478bddc0fe02aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$sudo systemctl start php74-php-fpm.service
다음 명령을 사용하여 php-fpm의 상태를 확인합니다.
active(running)
가 되어 있으면, 정상적으로 기동하고 있습니다.$sudo systemctl status php74-php-fpm.service
● php74-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php74-php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Mo 2020-07-20 21:13:23 UTC; 36min ago
Main PID: 24651 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 1, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php74-php-fpm.service
├─24651 php-fpm: master process (/etc/opt/remi/php74/php-fpm.conf)
├─24652 php-fpm: pool www
├─24653 php-fpm: pool www
├─24654 php-fpm: pool www
├─24655 php-fpm: pool www
└─24656 php-fpm: pool www
phpinfo()에서 php가 움직이고 있는지 확인
phpinfo를 호출하는 파일을 만들고 nginx 홈 디렉토리 ( /usr/share/nginx/html
)에 넣습니다.
$sudo vi info.php
<?php phpinfo(); ?>
브라우저에서 액세스하고 다음 화면이 표시되면 nginx에서 php가 정상적으로 실행되고 있습니다.
이것으로 nginx와 PHP7.4의 연계 설정이 완료되었습니다.
Reference
이 문제에 관하여(EC2의 nginx와 PHP7.4를 연계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Hide-Zaemon/items/22485d478bddc0fe02aa
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$sudo vi info.php
<?php phpinfo(); ?>
Reference
이 문제에 관하여(EC2의 nginx와 PHP7.4를 연계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Hide-Zaemon/items/22485d478bddc0fe02aa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)