우분투(Ubuntu) 22.04 Server PHP Nginx 설치기

안녕하세요. YeopBox의 상큼한놈 입니다.

이번에는 nginx와 php를 연동하게 설치를 진행해 보고자 합니다.

이번 과정은 PHP를 이용하는 프로젝트나 워드프레스를 설치하고자 할 때 선행되는 작업입니다.

Nginx 설치하기

먼저 nginx를 설치해 주겠습니다. 아래 커맨드를 입력하여 nginx를 설치해 줍니다.

설치가 완료되면 자동으로 nginx 서비스가 기동됩니다.

외부 접근을 위하여 방화벽을 오픈하는 것을 잊지 마세요. (80/tcp, 443/tcp)

위와 같이 nginx가 정상적으로 작동하는 것을 확인 하실 수 있습니다.

PHP 설치하기

이젠 php-fpm을 설치해 보도록 하겠습니다. 본 게시글은 우분투 22.04 버전을 기준으로 하기에 기준이 되는 8.1 버전으로 설치를 진행하였습니다.

php-fpm의 설치가 완료되면 이를 Nginx와 연동하기 위하여 nginx의 설정을 변경해 줍니다.

이후 아래와 같이 php 관련 옵션의 주석을 해제 (#제거) 해준 뒤, fastcgi_pass의 경로를 설치된 php-fpm 버전 명에 맞도록 수정합니다.
(필자의 경우 php8.1-fpm.sock; 임)

이후 nginx의 서비스를 재기동 해 줍니다.

다음으로 niginx의 비정상적인 접속을 막기 위한 과정을 진행해야 합니다.

아래와 같이 cgi.fix_pathinfo의 주석을 제거하고 값을 0으로 수정해 줍니다.

이후 php의 정상 작동을 확인하기 위해 기본이 되는 html 폴더 하단에 index.php를 생성합니다.

아래 코드를 입력 후 저장합니다.

이후 index.php로 접근하면 아래와 같이 정상적으로 phpinfo()가 실행된 모습을 확인할 수 있습니다.

이 외에 한국에서 이용하기 위한 설정 등은 추후에 다루도록 하겠습니다.

마치며…

이번에는 간단히 우분투 22.04 Server에 PHP및 Nginx를 설치해 보았습니다.

사실 php 관련 프로젝트는 많지 않으니 워드프레스를 설치하기 위한 과정 중 하나로 포스트를 작성하였습니다.

이후 java 및 tomcat 설치 방법에 대해서도 간략히 포스팅 하도록 하겠습니다.

변경하거나 추가해야 하는 사항이 있으면 댓글 부탁드립니다.

감사합니다.

Avatar photo

상큼한놈

1인 인디게임 개발을 하다 보류 현재는 이직을 준비중인 상큼한놈 입니다. 사이트에 방문해 주셔서 감사합니다.

우분투(Ubuntu) 22.04 Server PHP Nginx 설치기”의 2개의 댓글

  • Avatar photo
    2022년 10월 09일 9:35 오후
    Permalink

    안녕하세요!

    내용 공유 고맙습니다. 그런데 nginx에서 자꾸 막히네요. 추가설정없이 nginx.conf와 deafult.conf만 수정하여 서비스를 띄웠는데 local에서는 (변경된) index.hmtl이 잘 뜨는데, 호스트네임으로 접속하니 엉뚱하게 변경되지 않은 초기 index.html (‘Welcome to nginx !~~’)가 뜨네요. 외부네트워크에선 아예 접근이 안되고요.

    비슷한 문제로 야기된 것 같은데, 제가 1)도메인을 포워딩 서비스를 이용하여 iptime ddns로 ubuntu server로 연결하고 2) iptime에서 포트 포워딩으로 nginx 서버까지 연결했는데, 이것 때문일까요 ?
    ssh도 내부네트워크 (같은 wifi망 노트북)에서는 접속이 안되는데 외부네트워크에서 안되는 것을 보니 같은 문제로도 보입니다.

    제가 그냥 연습삼아 하는 입장이라 그냥 왕초보라고 생각하시면 됩니다.

    댓글달기
    • Avatar photo
      2022년 10월 18일 12:10 오후
      Permalink

      안녕하세요. 사이트에 방문해주시고 댓글 남겨주셔서 감사합니다.
      1. 포트포워딩으로 각 포트별로 정확히 지정해 주신것인지 확인해 주세요.
      2. /etc/nginx/sites-available/default에서 server 도메인 설정이 정확히 되어있는지 확인해 주세요.
      제가 아는 지식 선에선 이 두가지를 확인해 보시는 것을 추천드립니다.

      댓글달기

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다