16.6. PHP 스크립팅 언어 사용
PHP(하이퍼 텍스트 전처리기)는 주로 서버 측 스크립팅에 사용되는 범용 스크립팅 언어이며, 웹 서버를 사용하여 PHP 코드를 실행할 수 있습니다.
RHEL 8에서 PHP 스크립팅 언어는 php 모듈에서 제공하며, 여러 스트림(버전)에서 사용할 수 있습니다.
사용 사례에 따라 선택한 모듈 스트림의 특정 프로필을 설치할 수 있습니다.
-
common- 웹 서버를 사용하는 서버 측 스크립팅의 기본 프로필입니다. 여기에는 널리 사용되는 몇 가지 확장 기능이 포함되어 있습니다. -
최소- 이 프로필은 웹 서버를 사용하지 않고 PHP로 스크립팅을 위한 명령행만 설치합니다. -
devel- 이 프로필에는common프로필의 패키지와 개발을 위한 추가 패키지가 포함되어 있습니다.
16.6.1. PHP 스크립팅 언어 설치 링크 복사링크가 클립보드에 복사되었습니다!
선택한 php 모듈 버전을 설치할 수 있습니다.
절차
default 프로필로
php모듈 스트림을 설치하려면 다음을 사용합니다.yum module install php:stream
# yum module install php:streamCopy to Clipboard Copied! Toggle word wrap Toggle overflow 스트림 을 설치하려는 PHP 버전으로 교체합니다.
예를 들어 PHP 8.0을 설치하려면 다음을 수행합니다.
yum module install php:8.0
# yum module install php:8.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 기본
common프로필은php-fpm패키지도 설치하고Apache HTTP 서버또는nginx와 함께 사용할 PHP를 사전 구성합니다.php모듈 스트림의 특정 프로필을 설치하려면 다음을 사용합니다.yum module install php:stream/profile
# yum module install php:stream/profileCopy to Clipboard Copied! Toggle word wrap Toggle overflow 스트림 을 원하는 버전 및 프로필로 교체할 프로필 이름으로 교체합니다.
예를 들어 웹 서버 없이 사용할 PHP 8.0을 설치하려면 다음을 수행합니다.
yum module install php:8.0/minimal
# yum module install php:8.0/minimalCopy to Clipboard Copied! Toggle word wrap Toggle overflow
16.6.2. 웹 서버에서 PHP 스크립팅 언어 사용 링크 복사링크가 클립보드에 복사되었습니다!
16.6.2.1. Apache HTTP 서버와 함께 PHP 사용 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 8에서 Apache HTTP 서버를 사용하면 PHP를 FastCGI 프로세스 서버로 실행할 수 있습니다. FPM(FascGI Process Manager)은 웹 사이트가 높은 부하를 관리할 수 있는 대체 PHP FastCGI 데몬입니다. PHP는 RHEL 8에서 기본적으로 FastCGI Process Manager를 사용합니다.
FastCGI 프로세스 서버를 사용하여 PHP 코드를 실행할 수 있습니다.
사전 요구 사항
PHP 스크립팅 언어가 시스템에 설치되어 있습니다.
PHP 스크립팅 언어 설치를 참조하십시오.
절차
httpd모듈을 설치합니다.yum module install httpd:2.4
# yum module install httpd:2.4Copy to Clipboard Copied! Toggle word wrap Toggle overflow Apache HTTP 서버시작 :systemctl start httpd
# systemctl start httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 또는
Apache HTTP 서버가 이미시스템에서 실행 중인 경우 PHP를 설치한 후httpd서비스를 다시 시작하십시오.systemctl restart httpd
# systemctl restart httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow php-fpm서비스를 시작합니다.systemctl start php-fpm
# systemctl start php-fpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 부팅 시 두 서비스가 모두 시작되도록 활성화합니다.
systemctl enable php-fpm httpd
# systemctl enable php-fpm httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow PHP 설정에 대한 정보를 얻으려면
/var/www/html/디렉터리에 다음 콘텐츠를 사용하여index.php파일을 생성합니다.echo '<?php phpinfo(); ?>' > /var/www/html/index.php
# echo '<?php phpinfo(); ?>' > /var/www/html/index.phpCopy to Clipboard Copied! Toggle word wrap Toggle overflow index.php파일을 실행하려면 브라우저에서 다음을 가리킵니다.http://<hostname>/
http://<hostname>/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 특정 요구 사항이 있는 경우 구성을 조정합니다.
-
/etc/httpd/conf/httpd.conf- generichttpdconfiguration -
/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풀 구성
-
예 16.1. "Hello, World!" 실행 중. Apache HTTP 서버를 사용하는 PHP 스크립트
/var/www/html/디렉터리에 프로젝트에 대한hello디렉터리를 생성합니다.mkdir hello
# mkdir helloCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 내용으로
/var/www/html/hello/디렉터리에hello.php파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Apache HTTP 서버시작 :systemctl start httpd
# systemctl start httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow hello.php파일을 실행하려면 브라우저에서 다음을 가리킵니다.http://<hostname>/hello/hello.php
http://<hostname>/hello/hello.phpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 그 결과 "Hello, World!" 텍스트가 있는 웹 페이지가 표시됩니다.
16.6.2.2. nginx 웹 서버와 함께 PHP 사용 링크 복사링크가 클립보드에 복사되었습니다!
nginx 웹 서버를 통해 PHP 코드를 실행할 수 있습니다.
사전 요구 사항
PHP 스크립팅 언어가 시스템에 설치되어 있습니다.
PHP 스크립팅 언어 설치를 참조하십시오.
절차
nginx모듈 스트림을 설치합니다.yum module install nginx:stream
# yum module install nginx:streamCopy to Clipboard Copied! Toggle word wrap Toggle overflow 스트림 을 설치하려는
nginx버전으로 교체합니다.예를 들어
nginx버전 1.18을 설치하려면 다음을 수행합니다.yum module install nginx:1.18
# yum module install nginx:1.18Copy to Clipboard Copied! Toggle word wrap Toggle overflow nginx서버를 시작합니다.systemctl start nginx
# systemctl start nginxCopy to Clipboard Copied! Toggle word wrap Toggle overflow 또는
nginx서버가 이미 시스템에서 실행 중인 경우 PHP를 설치한 후nginx서비스를 다시 시작하십시오.systemctl restart nginx
# systemctl restart nginxCopy to Clipboard Copied! Toggle word wrap Toggle overflow php-fpm서비스를 시작합니다.systemctl start php-fpm
# systemctl start php-fpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 부팅 시 두 서비스가 모두 시작되도록 활성화합니다.
systemctl enable php-fpm nginx
# systemctl enable php-fpm nginxCopy to Clipboard Copied! Toggle word wrap Toggle overflow PHP 설정에 대한 정보를 얻으려면
/usr/share/nginx/html/디렉터리에 다음 콘텐츠를 사용하여index.php파일을 생성합니다.echo '<?php phpinfo(); ?>' > /usr/share/nginx/html/index.php
# echo '<?php phpinfo(); ?>' > /usr/share/nginx/html/index.phpCopy to Clipboard Copied! Toggle word wrap Toggle overflow index.php파일을 실행하려면 브라우저에서 다음을 가리킵니다.http://<hostname>/
http://<hostname>/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: 특정 요구 사항이 있는 경우 구성을 조정합니다.
-
/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풀 구성
-
예 16.2. "Hello, World!" 실행 중. nginx 서버를 사용하는 PHP 스크립트
/usr/share/nginx/html/디렉터리에 프로젝트의hello디렉터리를 생성합니다.mkdir hello
# mkdir helloCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 콘텐츠를 사용하여
/usr/share/nginx/html/hello/디렉터리에hello.php파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow nginx서버를 시작합니다.systemctl start nginx
# systemctl start nginxCopy to Clipboard Copied! Toggle word wrap Toggle overflow hello.php파일을 실행하려면 브라우저에서 다음을 가리킵니다.http://<hostname>/hello/hello.php
http://<hostname>/hello/hello.phpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 그 결과 "Hello, World!" 텍스트가 있는 웹 페이지가 표시됩니다.
16.6.3. 명령줄을 사용하여 PHP 스크립트 실행 링크 복사링크가 클립보드에 복사되었습니다!
PHP 스크립트는 일반적으로 웹 서버를 사용하여 실행되지만 명령줄을 사용하여 실행할 수도 있습니다.
명령줄만 사용하여 php 스크립트를 실행하려면 php 모듈 스트림의 최소 프로필을 설치합니다.
PHP 스크립팅 언어 설치를 참조하십시오.
사전 요구 사항
PHP 스크립팅 언어가 시스템에 설치되어 있습니다.
PHP 스크립팅 언어 설치를 참조하십시오.
절차
텍스트 편집기에서
filename.php 파일을 생성합니다.파일 이름을 파일 이름으로 바꿉니다.
명령줄에서 생성된
filename.php파일을 실행합니다.php filename.php
# php filename.phpCopy to Clipboard Copied! Toggle word wrap Toggle overflow
예 16.3. "Hello, World!" 실행 중. 명령줄을 사용하는 PHP 스크립트
텍스트 편집기를 사용하여 다음 내용으로
hello.php파일을 생성합니다.<?php echo 'Hello, World!'; ?><?php echo 'Hello, World!'; ?>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 명령줄에서
hello.php파일을 실행합니다.php hello.php
# php hello.phpCopy to Clipboard Copied! Toggle word wrap Toggle overflow 그 결과 "Hello, World!"가 출력됩니다.