개발 꿀팁/PHP

nginx+php 설정

Jammie 2022. 11. 1. 13:53
반응형

1. php 설치

yum install php
 
#버전 확인
php -v

2.nginx 설치

yum install nginx
 
#버전 확인
nginx -v

3.nginx 기본 포트 변경

vi /etc/nginx/nginx.conf
#포트 변경 88

4. nginx 포트를 엽니다

# 방화벽을 다시 시작하여 방화벽이 반드시 켜져 있는지 확인합니다.
systemctl restart firewalld

# 방화벽에 포트 88을 추가하고 영구적으로 켜도록 설정
firewall-cmd --zone=public --add-port=88/tcp --permanent

# 방화벽을 다시 불러와서 이전 작업을 활성화하십시오
firewall-cmd --reload

# 88 포트 열기 확인
firewall-cmd --zone=public --query-port=88/tcp

5.HTTP 서비스 시작

# 방화벽을 다시 시작하여 방화벽이 반드시 켜져 있는지 확인합니다.
systemctl restart firewalld

# 방화벽에 서비스 http를 추가하고 영구적으로 켜짐
firewall-cmd --zone=public --add-service=http --permanent

# 방화벽을 다시 불러와서 이전 작업을 활성화하십시오
firewall-cmd --reload

# HTTP 서비스 오픈 여부 확인
firewall-cmd --query-service http

6.Nginx 서비스 시작 및 Nginx 웹페이지 방문

# Nginx 서비스를 재개하고 start용 restart를 사용하지 않는 것은 독자가 이전에 Nginx 서비스를 시작한 적이 있고 종료하지 않은 것을 방지하기 위함입니다.
systemctl restart nginx

# Nginx 서비스의 실행 상태를 확인하면 런닝이 성공했다는 문구가 있습니다.
systemctl status nginx

# Nginx 서비스를 시작할 때 시작하도록 설정합니다. 이 단계는 나중에 Linux를 다시 시작한 후 Nginx를 사용하기 전에 서비스를 시작하는 것을 잊는 것을 방지하기 위해 독자가 자신의 상황에 따라 이 명령의 실행 여부를 선택하는 것입니다.
systemctlenablenginx

# 브라우저에 IP:88을 입력하여 Nginx 웹 페이지를 방문합니다

7.PHP-FPM 설치 및 서비스 시작

yum install php-fpm.x86_64

# PHP-FPM 서비스를 재개하고 start용 restart를 사용하지 않는 것은 독자가 이전에 PHP-FPM 서비스를 시작한 적이 있고 종료하지 않은 것을 방지하기 위함입니다.
systemctl restart php-fpm

# PHP-FPM 서비스의 작동 상태를 점검하면 런닝이 완료되었음을 알 수 있습니다.
systemctl status php-fpm

# PHP-FPM 서비스 시작부터 시작하도록 설정, 이 단계는 나중에 Linux를 재부팅한 후 PHP-FPM을 사용하기 전에 서비스 시작을 잊어버리는 것을 방지하기 위해 독자가 자신의 상황에 따라 이 명령의 실행 여부를 선택하는 것입니다.
systemctlenable php-fpm

8.PHP 파일을 실행할 수 있도록 Nginx 구성 파일 수정

vi/etc/nginx/nginx.conf

#수정
서버 {
listen 88 default_server
listen [::]:88 default_server;
# 여기가 바뀌었으니, 당신의 도메인도 쓸 수 있습니다.
server_name xx.xxx.xxx;
# 기본 웹 사이트 루트 (www. 디렉토리)
root/var/www/;
# Load configuration files for the default server block.
include/etc/nginx/default.d/*.conf;
location/ {
# 첫 페이지 인덱스 파일을 정의하는 이름이 변경되었습니다
index index.php index.html index.htm;
}
error_page 404/404.html;
location =/40x.html {
}
error_page 500502 503 504/50x.html;
location =/50x.html {
}
# 여기에 새로 추가된
# PHP 스크립트 요청은 모두 FastCGI로 전달됩니다. FastCGI 프로토콜 기본 설정을 사용합니다.
# Fastcgi 서버와 프로그램(PHP, Python) 간의 통신에 관한 합의
location ~ \.php$ {
# 수신 포트 설정
fastcgi_pass 127.0.0.1:9000;
# nginx의 기본 초기화면 파일 설정 (위에서 이미 설정되었으므로 삭제할 수 있음)
fastcgi_indexindex.php;
# 스크립트 파일이 요청한 경로 설정
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# fastcgi에 대한 설정 파일 가져오기
include fastcgi_params;
}
}

# 수정된 Nginx 프로필에 오류가 있는지 보기
nginx –t

# Nginx 서비스 다시 시작
systemctl restart nginx

9.PHP 파일에 대한 테스트 액세스

# 새 PHP 파일 test.php
vi/usr/share/nginx/html/test.php

# i 키를 눌러 편집 모드로 들어가시고, PHP 설정 정보를 표시하기 위해 다음을 입력하세요.
<?php
phpinfo( )
?>
# 편집 모드를 종료하려면 esc 키를 누르십시오

# 파일 저장 및 종료
:wq

# 브라우저에 IP:88/test.php를 입력하여 PHP 웹 페이지를 방문합니다

 

반응형