CentOS 5.2 웹서버에서 html파일에서 php코드를 인식하지 못합니다.

heisenjoy의 이미지

APM을 yum으로 설치하였으며, 설치후에

# yum install gd gd-devel
# yum install libxml2 libxml2-devel
# yum install openssl openssl-devel
# yum install gmp gmp-devel
# yum install mysql-server
# yum install php-mysql
# yum install php-devel
# yum install php-gd
# yum install php-mbstring

로 php추가 모듈을 설치해 주었습니다.

현재 세션을 이용하여 로그인상태를 확인하려고 하는데

<?
include "check_session.php";
?>
<html>
<head>
~생략~
</body>
</html>

이런식으로 맨 위에 php코드를 넣어주었습니다. 윈도우환경에 오토셋을 이용하여 서버를 구축하였을 때에는 문제가 없었습니다.

CentOS에서 똑같은 소스임에도 불구하고, <? ~ ?> 부분의 php코드를 처리하지 못합니다.

check_seesion.php의 내용은

<?
session_start();
if(세션에 사용자정보가 없다면) {
die(로그인하세요);
}
?>

이런식입니다. 아무래도 모듈이 부족한게 아닐까 생각해봅니다.

pogusm의 이미지

<?php
phpinfo();
?>

으로 테스트를 해보세요.

# vim /etc/php.ini 라는 설정파일에 아래와 같이 되어 있어야만 <? ~ ?> 를 받아들일거에요

short_open_tag = On

heisenjoy의 이미지

php.ini 확인하였으나 이상 없었습니다. 현재 html파일이 아니라 php파일 내부에 html을 넣는 형식으로 대체하고 있습니다.

pogusm의 이미지

# vim /etc/httpd/conf.d/php.conf 파일을 열어서

AddType application/x-httpd-php .htm .html

위처럼 추가하고

# /etc/init.d/httpd restart

아파치를 재시작하면, html파일내의 php 코드도 정상적으로 실행됩니다.

익명 사용자의 이미지

저같은 경우는 위의 설정 값 바꾸는 것으로 해결하였습니다!!!

익명 사용자의 이미지

yum 설치후 기본값이 short_open_tag = Off 로 되어있어서 설정값 바꿔주었습니다.

익명 사용자의 이미지

yum 설치후 기본값이 short_open_tag = Off 로 되어있어서 설정값 바꿔주었습니다.