팁/튜토리얼

[VPS] html 파일에서 PHP 실행하기

2017.03.03 04:21
2,707
0

서버 유저 대상의 팁입니다.

 

Nginx + PHP7 이 설치된 서버에서 기본적으로 <?php 를 <? 로 줄여주는 것과

html 파일 내부의 php 코드 실행은 따로 설정해주어야 하더군요.

 

1. HTML 파일에서 PHP 코드 실행하기

1) 기본 PHP 설정

/etc/php/7.0/fpm/php-fpm.conf

security.limit_extensions = .php .php3 .php4 .php5 .php7 .html .htm

2) 사용자 계정 PHP 설정

/etc/php/7.0/fpm/pool.d/eond.conf

security.limit_extensions = .php .php3 .php4 .php5 .php7 .html .htm

사용자 계정을 따로 추가하셨다면 사용자 계정의 설정 파일에도 위 코드를 넣어주세요.

안 그러면 Access Denied 표시가 뜹니다.

 

3) 루트 계정의 PHP 설정

/etc/php/7.0/fpm/pool.d/www.conf

security.limit_extensions = .php .php3 .php4 .php5 .php7 .html .htm

기본 계정의 PHP 설정입니다. 사용 안하시면 안하셔도 됩니다.

 

4) Nginx 기본 설정

/etc/nginx/conf.d/default.conf 

 

변경 전

location ~ [^/]\.php(/|$) {

변경 후 

location ~ [^/]\.(php|html|htm)(/|$) {

 

변경 전 php 부분을 (php|html|htm) 으로 수정해줍니다.

 

5) 사용자 계정 Nginx 설정

/etc/nginx/conf.d/eond.com.conf

4와 마찬가지 php 부분을 아래와 같이 수정해줍니다.

location ~ [^/]\.(php|html|htm)(/|$) {

 

6) Nginx, PHP7 재실행

# service nginx restart
# service php7.0-fpm restart

 

출처 : http://wp.yoonc.co.kr/2012/06/nginx-php-fpm-%EC%97%90%EC%84%9C-html-htm-%ED%8C%8C%EC%9D%BC%EC%97%90%EC%84%9C-php%EA%B5%AC%EB%AC%B8%EC%8B%A4%ED%96%89/

참조 : 

http://www.softwareprojects.com/resources/programming/t-nginx-html-files-as-php-1817.html

http://stackoverflow.com/questions/9994544/nginx-mapping-html-files-to-php

http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040203&docId=207933392&qb=bmdpbnggcGhwIGh0bWw=&enc=utf8&section=kin&rank=1&search_sort=0&spq=0&pid=T7BN/lpVuE0ssbuh4v4sssssstZ-355995&sid=8VgmEzIy/UlaO234Kyq7Mg%3D%3D

 

 

2. <?php 를 <? 로 짧게 줄여주기

/etc/php/7.0/fpm/php.ini

short_open_tag = On

수정 후 PHP를 재실행해줍니다.

 

3. PHP 메모리 올려주기

/etc/php/7.0/fpm/php.ini

memory_limit = 256M

 

4. PHP 최대 사이즈 지정

/etc/php/7.0/fpm/php.ini

post_max_size = 256M

 

eond Lv. 12

댓글 3

  • 2017.03.03 04:23 #517881

    \이 아니라 /입니다 ㅎㅎ 리눅스에서 \ 쓰면 에러나요.

    전세계에서 유일하게 한글 윈도우에서만 쓰는 이상한 경로구분자 \...

  • 2017.03.03 04:27 #517897
    다 수정했습니다. ㅎ
    PHPStorm 에서 path 복사 했더니 ㅎ
  • 2017.03.03 05:00 #517914
    .php(version) 확장자는 쓰지 않을것을 권장합니다. 많은 개발자들이 .php로만 생각하여 개발하기때문에 어떤 보안허점이 될지 모릅니다.