6.2. 웹 서버에서 PHP 스크립팅 언어 사용
6.2.1. Apache HTTP Server에서 PHP 사용
Red Hat Enterprise Linux 9에서 Apache HTTP Server
를 사용하면 PHP를 FastCGI 프로세스 서버로 실행할 수 있습니다. FastCGI Process Manager (FPM)는 웹 사이트가 높은 부하를 관리 할 수있는 대체 PHP FastCGI 데몬입니다. PHP는 RHEL 9에서 기본적으로 FastCGI Process Manager를 사용합니다.
FastCGI 프로세스 서버를 사용하여 PHP 코드를 실행할 수 있습니다.
사전 요구 사항
- PHP 스크립팅 언어가 시스템에 설치되어 있습니다.
절차
httpd
패키지를 설치합니다.# dnf install httpd
Apache HTTP Server
를 시작합니다.# systemctl start httpd
또는 시스템에서
Apache HTTP Server
가 이미 실행 중인 경우 PHP를 설치한 후httpd
서비스를 다시 시작합니다.# systemctl restart httpd
php-fpm
서비스를 시작합니다.# systemctl start php-fpm
선택 사항: 두 서비스 모두 부팅 시 시작되도록 활성화합니다.
# systemctl enable php-fpm httpd
PHP 설정에 대한 정보를 얻으려면
/var/www/html/
디렉터리에 다음 콘텐츠를 사용하여index.php
파일을 생성합니다.# echo '<?php phpinfo(); ?>' > /var/www/html/index.php
index.php
파일을 실행하려면 브라우저가 다음을 가리키도록 합니다.http://<hostname>/
선택 사항: 특정 요구 사항이 있는 경우 구성을 조정합니다.
-
/etc/httpd/conf/httpd.conf
- generichttpd
configuration -
/etc/httpd/conf.d/php.conf
-httpd
에 대한 PHP 특정 설정 -
/usr/lib/systemd/system/httpd.service.d/php-fpm.conf
- 기본적으로php-fpm
서비스가httpd
로 시작됩니다. -
/etc/php-fpm.conf
- FPM 메인 구성 -
/etc/php-fpm.d/www.conf
- 기본WWW
풀 구성
-
예 6.1. "Hello, World!"를 실행합니다. Apache HTTP Server를 사용한 PHP 스크립트
/var/www/html/
디렉터리에 프로젝트의hello
디렉터리를 만듭니다.# mkdir hello
다음 콘텐츠를 사용하여
/var/www/html/hello/
디렉터리에hello.php
파일을 생성합니다.# <!DOCTYPE html> <html> <head> <title>Hello, World! Page</title> </head> <body> <?php echo 'Hello, World!'; ?> </body> </html>
Apache HTTP Server
를 시작합니다.# systemctl start httpd
hello.php
파일을 실행하려면 브라우저가 다음을 가리키도록 합니다.http://<hostname>/hello/hello.php
결과적으로 "Hello, World!" 텍스트가 있는 웹 페이지가 표시됩니다.
추가 리소스
6.2.2. nginx 웹 서버에서 PHP 사용
nginx
웹 서버를 통해 PHP 코드를 실행할 수 있습니다.
사전 요구 사항
- PHP 스크립팅 언어가 시스템에 설치되어 있습니다.
절차
nginx
패키지를 설치합니다.# dnf install nginx
nginx
서버를 시작합니다.# systemctl start nginx
또는
nginx
서버가 시스템에서 이미 실행 중인 경우 PHP를 설치한 후nginx
서비스를 다시 시작합니다.# systemctl restart nginx
php-fpm
서비스를 시작합니다.# systemctl start php-fpm
선택 사항: 두 서비스 모두 부팅 시 시작되도록 활성화합니다.
# systemctl enable php-fpm nginx
PHP 설정에 대한 정보를 얻으려면
/usr/share/nginx/html/
디렉터리에 다음 콘텐츠를 사용하여index.php
파일을 만듭니다.# echo '<?php phpinfo(); ?>' > /usr/share/nginx/html/index.php
index.php
파일을 실행하려면 브라우저가 다음을 가리키도록 합니다.http://<hostname>/
선택 사항: 특정 요구 사항이 있는 경우 구성을 조정합니다.
-
/etc/nginx/nginx.conf
-nginx
기본 구성 -
/etc/nginx/conf.d/php-fpm.conf
-nginx
에 대한 FPM 구성 -
/etc/php-fpm.conf
- FPM 메인 구성 -
/etc/php-fpm.d/www.conf
- 기본WWW
풀 구성
-
예 6.2. "Hello, World!"를 실행합니다. nginx 서버를 사용하는 PHP 스크립트
/usr/share/nginx/html/
디렉터리에 프로젝트의hello
디렉터리를 만듭니다.# mkdir hello
다음 콘텐츠를 사용하여
/usr/share/nginx/html/hello/
디렉터리에hello.php
파일을 만듭니다.# <!DOCTYPE html> <html> <head> <title>Hello, World! Page</title> </head> <body> <?php echo 'Hello, World!'; ?> </body> </html>
nginx
서버를 시작합니다.# systemctl start nginx
hello.php
파일을 실행하려면 브라우저가 다음을 가리키도록 합니다.http://<hostname>/hello/hello.php
결과적으로 "Hello, World!" 텍스트가 있는 웹 페이지가 표시됩니다.
추가 리소스