IT TIP

내 PHP 파일이 일반 텍스트로 표시되는 이유는 무엇입니까?

itqueen 2020. 10. 25. 13:25
반응형

내 PHP 파일이 일반 텍스트로 표시되는 이유는 무엇입니까?


저는 WAMP에서 한동안 PHP를 사용하여 PHP 애플리케이션을 작성했습니다. 이제 업무용 PC에 PHP와 Apache HTTP Server를 별도로 설치하고 있습니다. PHP 5와 최신 Apache를 설치했습니다. 나는 localhost에 가서 그것이 작동하는지 봅니다!

이제 test.php다음을 표시 하는 파일을 추가 합니다.

<?php
    phpinfo();
?>

그러나 브라우저에서는 일반 텍스트 만 표시합니다. PHP 5를 사용하라고 명시 적으로 말한 어딘가에 있습니까?


이를 서버 구성에 추가해야합니다.

AddType application/x-httpd-php .php

그것은 당신이 PHP를 제대로 설치했다고 가정하는 것인데, 설치 직후 정상적으로 작동하지 않기 때문에 그렇지 않을 수도 있습니다.

디렉티브 (일반적으로 )를 php사용하여 Apache 구성에 .so / .dll 파일을 추가해야 할 수도 있습니다 .LoadModulehttpd.conf


Apache 용 PHP 5 라이브러리를 설치해야합니다.

Debian 및 Ubuntu의 경우 :

apt-get install libapache2-mod-php5

그리고 Apache를 다시 시작하십시오.

service apache2 restart

PHP 스크립트를 PHP로 처리하려면 Apache (웹 서버)를 구성해야합니다. Apache의 구성을 확인하십시오. 모듈을로드해야합니다 (시스템에 따라 경로가 다를 수 있음) :

LoadModule php5_module "c:/php/php5apache.dll"

또한 PHP로 처리 할 항목을 Apache에 알려야합니다.

AddType application/x-httpd-php .php

자세한 내용은 설명서를 참조하십시오 .


또 다른 이유는 (이 경우는 아니지만 누군가에게 신경을 덜어 줄 수도 있습니다) PHP 5.5에서는 짧은 오픈 태그 <? phpinfo(); ?>가 기본적으로 비활성화되어 있기 때문입니다.

따라서 PHP 인터프리터는 짧은 태그 내의 코드를 일반 텍스트로 처리합니다. 이전 버전 PHP에서는이 기능이 기본적으로 활성화되었습니다. 따라서 새로운 행동은 약간 신비 스러울 수 있습니다.


나처럼 Apache를 설치하기 전에 php-cgi를 설치했을 때 PHP를 실행하도록 Apache를 올바르게 설정하지 않고 PHP를 완전히 제거하고 다시 설치하면 문제가 해결되는 것처럼 보였습니다.


PHP 코드를 처리하려면 Apache에 핸들러를 추가해야합니다.

sudo vi /etc/httpd/conf/httpd.conf 명령으로 편집

이 두 핸들러 추가

  AddType application/x-httpd-php .php
  AddType application/x-httpd-php .php3

아래 지정된 위치에

<IfModule mime_module>

 AddType application/x-compress .Z
 AddType application/x-gzip .gz .tgz

--Add Here--


</IfModule>

AddType 핸들러에 대한 자세한 내용은

http://httpd.apache.org/docs/2.2/mod/mod_mime.html


userdir 모드를 사용하고 있습니까?

이 경우 PHP5가 기본적으로 해당 위치에서 스크립트 실행을 비활성화하는 것처럼 보이며 다음 줄을 주석 처리해야합니다.

<IfModule mod_userdir.c>
    <Directory /home/*/public_html>
        php_admin_flag engine Off
    </Directory>
</IfModule>

in /etc/apache2/mods-enabled/php5.conf (on a ubuntu system)

참고URL : https://stackoverflow.com/questions/3555681/why-are-my-php-files-showing-as-plain-text

반응형