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

 

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

 

이온디

profile
이온디는 라이믹스를 비롯한 다양한 CMS의 시드뱅크를 꿈꿉니다. 여러분들이 사랑하는 웹소스를 언제든지 사용할 수 있게 하기 위해 이온디는 매일 소스코드를 유지보수하고 있으며, 언제든지 다운로드할 수 있는 소스마켓을 운영하고 있습니다.

#XE마켓 - 이온디스토어
https://eond.com/xemarket/

# XE/라이믹스 단톡방을 운영 중입니다. (비번: 2022)
https://open.kakao.com/o/giaKKnl

# XE/라이믹스 생활코딩 모듈 강좌입니다.
https://opentutorials.org/module/3774
  • Lv36

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

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

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