2011-01-03 4 views
6

PHP 구성이 CGI 모드에서 실행될 때 재정의하는 방법을 알려주는 자습서가 있습니다. 그러나 많은 사람들이 서버가 Linux에서 실행되고 있다고 가정하기 때문에 혼란 스럽습니다. 그 동안 Windows에서 해야합니다.CGI 모드에서 PHP 구성을 재정의하는 방법

내 호스팅은 실제로 Linux를 사용하지만 로컬 개발 컴퓨터는 Xampp 1.7.3이 설치된 Windows XP를 사용하고 있습니다. 그래서 먼저 내 로컬 컴퓨터에서 그렇게해야합니다. 그런 다음 호스팅 서버에서 구성을 변경하고 싶습니다.

내 호스트 서버의 PHP가 이미 로컬 컴퓨터에서 Apache 모듈로 실행되는 동안 CGI로 실행됩니다. 이 시점에서

은 이해 과정은 다음과 같습니다

  1. 변경 PHP는 CGI 모드에서 작동 할 수 있습니다. 나는 "아파치 - xampp.conf"이 두 줄을 주석으로 이런 짓을 : 내 PHP 지금 CGI로 실행

    # LoadFile "C:/xampp/php/php5ts.dll"
    # LoadModule php5_module modules/php5apache2_2.dll

  2. . 나는 이것을 phpinfo()와 비교했다. 그것은 Server API가 이제 CGI/FastCGI임을 말해줍니다. 이제 PHP 설정을 덮어 쓰고 싶습니다.

  3. DocumentRoot에서 "cgi-bin"디렉토리를 만듭니다. 내 DocumentRoot는 "D : \ www \"(가상 호스트가있는 Apache를 사용하고 있습니다)입니다. 이제는 "D : \ www \ cgi-bin"입니다.

  4. 변경 기본 "CGI - bin에"에서 디렉터리 설정 "C :/XAMPP이 방법으로/cgi-bin /"에서 "D : \ www가 \ CGI - bin에"

    ScriptAlias /cgi-bin/ "D:/www/cgi-bin/"

    <Directory "D:\www\cgi-bin"> 
        Options MultiViews Indexes SymLinksIfOwnerMatch Includes ExecCGI 
        AllowOverride All 
        Allow from All 
    </Directory> 
    
  5. 'php.ini'파일을 'D : \ www \ cgi-bin'에 복사하고 upload_max_filesize 설정을 128M에서 10M으로 수정하십시오.

  6. "D : \ www가 \ CGI - bin에"에서 'php.cgi'파일을 만들고 파일 내부에 다음 코드를 삽입 :

    #!/bin/sh
    /usr/local/cpanel/cgi-sys/php5 -c /home/user/public_html/cgi-bin/

그게 전부 야. 나는이 시점에서 붙어있다. 모든 자습서에서는 'php.cgi'파일을 만들고 쉘 코드를 파일에 넣으라고합니다.

Windows에서 6 단계를 수행하는 방법은 무엇입니까? 다음 단계는 .htaccess 파일에 핸들러를 생성하여 'php.cgi'를로드하는 것입니다.

또한 호스팅 서버 (Linux)에서 PHP 구성을 변경해야하기 때문에 위의 여섯 번째 단계는 무엇입니까? 일부 자습서에서는 위의 줄 대신 다음 줄을 삽입합니다.

#!/bin/sh 
export PHPRC=/site/ini/1 
exec /cgi-bin/php5.cgi 

질문이 명확하지 않으면 죄송합니다.나는 새로운 회원이며 이것이이 사이트의 첫 번째 질문입니다.

감사합니다.

+0

이걸 봤어? http://www.php.net/manual/en/install.windows.php#60737 – crnlx

+0

잘 쓰여진 질문입니다. 그러나 요점 (2)에서는 CGI 인터프리터가 아닌 PHP 아파치 모듈을 설정하는 것이 가장 가능성이 높습니다. 따라서 추가 CGI 설정 단계는 불필요한 것처럼 보입니다. 그냥 phpinfo()를 다시 검사하여 php.ini가 상주 할 것으로 예상되는 곳을 확인한 다음 사용하십시오. mod_php를 사용하고 있기 때문에 아파치를 재시작하지 않는 한 설정은 선택되지 않습니다. 또한 신속하게 Windows 사용법을 비난하게하십시오. – mario

+0

미안하지만 이해가 안됩니다. 당신은 요점 (1)에서 나는 이미 CGI에서 작동하도록 PHP를 변경했다. (2) 아파치 모듈로 다시 바뀐다. –

답변

1

서버가 이미 cgi로 PHP를 실행하고 있고 여러 PHP 구성을 실행할 필요가없는 경우 5 단계와 6 단계가 필요하지 않습니다. 그냥 기본 php.ini을 변경하십시오

+0

예, 기본 php.ini 파일을 직접 편집 할 수 있다는 것을 알고 있습니다. 그러나 우리는 서버 호스팅에서 그렇게 할 수 없습니다. –

+0

호스팅 서버에서 PHP 구성에 영향을 줄 수있는 확실한 방법은 없습니다 (제 3 자 호스트에 대해 말하는 것으로 가정합니다.) 일부 호스트는이를 완전히 방지합니다. 다른 것들은 특정 위치에 자신의 php.ini 파일을 가질 수있게합니다. 기타는 .htaccess 파일을 통한 변경을 허용합니다. php_value upload_max_filesize 10M –

+0

예 Svemir. 제 3 자 호스트를 사용하고 있습니다. 사실 나는 .htaccess에 PHP 구성을 작성했습니다. 하지만 내 호스팅 서버가 PHP를 CGI 모드로 실행하도록 설정했기 때문에 작동하지 않습니다. –

관련 문제