본문으로 바로가기
APM설치(2) - 우분투 서버에 PHP 설치하기

[PHP 7.0 설치]
우분투 16,04에는 기본적으로 php 7.0이 설치 됩니다.

 ~# apt-get install php

[PHP-아파치 연동모듈 설치]
 ~# apt-get install libapache2-mod-php7.0

[암호화 모듈 설치]
 ~# apt-get install php-mcrypt

[다국어 처리모듈 설치]
 ~# apt-get install php-mbstring

[이미지처리 모듈 설치]
  # apt-get install php-gd

[원격지 정보 모듈 설치]
  #  apt-get install php-curl php-xml

[아파치 재시작]
  # service apache2 restart

[버전체크]
  # php -v
   PHP 7.0.30-0ubuntu0.16.04.1 (cli) ( NTS )
   Copyright (c) 1997-2017 The PHP Group
   Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.30-0ubuntu0.16.04.1, Copyright (c) 1999-2017, by Zend Technologies

[우분투 서버의 HTTP 헤더에서 서버 정보 숨기기]
    
   서버정보는 위와 같이 특정파일이 없거나 애러 등일 경우 페이지 하단에 표시됩니다.

   # vi /etc/apache2/conf-available/security.conf 
  
    아래 설정으로 수정
    ServerTokens OS
       =>  ServerTokens Prod
       
    ServerSignature On
   =>ServerSignature Off
   
   아파치 재시작
   # sudo service apache2 restart

    
   설정 후 웹페이지 접속 화면입니다.
    하단의 아파치와 php버젼 정보가 나타나지 않게 됩니다.
 
   테스트
   # curl -I 192.168.0.9

[PHP환경설정]
 ~# vi /etc/php/7.0/apache2/php.ini

   include_path = ".:/usr/share/php"

   short_open_tag = On
기본값이 off 이므로
아파치 실행전 php,ini에서 short_open_tag = On으로 한다음 시작할 것 
      => 아니면 소스 출력이 될 수 있습니다.
   
   session.gc_maxlifetime = 1440
     => session.gc_maxlifetime = 3600
    ;사용자가 아무런 입력이 없을경우 1시간 후 로그인 상태가 해제됩니다. 
   
     ; 웹브라우저를 종료할때까지 세션을 유지합니다.
session.cookie_lifetime = 0 

; 시간대 설정
date.timezone = "Asia/Seoul"
;세션 자동시작
session.auto_start=1 

    [파일업로드 관련]
 
    아래부분은 대용량 파일을 전송하는 경우만 설벙을 변경하면 됩니다.

    ; 최대 실행시간으로 파일 사이즈가 클수록 시간을 늘려주어야 합니다.
max_execution_time = 60
 
; 스크립트 페이지로 넘어가기 전에 php엔진이 데이터를 업로더를 받는 시간 입니다.
max_input_time = 120

; 메모리 사용량 제한으로 메모리 용량에 맞춰 적당히 설정합니다.
; 256m 로 했을 떄 애러발생 
memory_limit = 1024M

; Post 방식으로 넘겨질 최대 데이터 사이즈 설정 입니다. 넉넉히 5GB로 설정 합니다.
post_max_size = 5G

; 임시 폴더로 파일을 업로드를 할 때 임시로 저장되는 폴드입니다. 
      ;큰 용량의 파일 업로드를 할 때 지정되지 않으면 업로드 에러가 나기도 합니다.
upload_tmp_dir = "/var/tmp"

; 최대 업로드파일 사이즈로 역시 넉넉히 5GB로 설정 했습니다.
upload_max_filesize = 5G
; 한번에 업로드 가능한 파일 갯수
max_file_uploads = 300  

     파일의 크기나 갯수 등은 php파일에서 별도 지정하거나 제한하시면 됩니다.
  
    설정이 끝났으면 
    아파치 재시작
   # sudo service apache2 restart

[php와 apache웹서버 연동확인]
 # vi /var/www/html/phpinfo.php
 <?php
  phpinfo();
  ?>
  

[웹페이지 확인]
http://192.168.0.9/phpinfo.php



위와 같은 화면이 나오면 아파치와 php가 연동이 잘된 것입니다.