2011-01-03 9 views
6

PHP設定がCGIモードで実行されているときにPHP設定を上書きする方法を教えてくれるチュートリアルがあります。しかし、私はまだ多くの人がサーバがLinux上で動いていると仮定しているので、混乱しています。私はそれを行う必要がありますまた Windows上で。CGIモードで実行しているときのPHP設定を上書きする方法

私のホストは実際にLinuxを使用していますが、私のローカル開発用コンピュータはWindows XPとXampp 1.7.3を使用しています。だから私はまず自分のローカルコンピュータでそれを行う必要があります、その後、私はホスティングサーバー上の設定を変更したい。

私のホスティングサーバーのPHPは、ローカルコンピュータではまだApacheモジュールとして動作しているのに、CGIとして実行されています。この時点で

は、私が理解のプロセスは以下のとおりです。

  1. 変更PHPをCGIモードで動作するように。私は、 "httpdの-xampp.conf" でこれらの2行をコメントすることでこれをやった:私の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設定を変更する必要があるため、上記の6番目の手順は正しいですか?チュートリアルでは、上記の代わりに次の行を挿入するように指示しています。

#!/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 apacheモジュールを設定する可能性が最も高いです。したがって、さらなるCGI設定ステップは冗長に見える。単にphpinfo()を再度チェックしてphp.iniが存在する場所を確認し、それを使用してください。 mod_phpを使用しているため、Apacheを再起動しない限り、設定は取得されません。また、私はすぐにWindowsの使用法を不承認にさせてください。 – mario

+0

ごめんなさいわかりません。あなたはポイント(1)を意味しますか?すでにCGIで動作するようにPHPを変更しました。ポイント(2)私はApacheモジュールに戻りますか? –

答えて

1

サーバがすでにPHPをcgiとして実行していて、複数のPHP設定を実行する必要がない場合は、手順5と6は必要ありません。デフォルトのphp.iniを変更するだけです

+0

ええ、私は、デフォルトのphp.iniファイルを直接編集できることを知っています。しかし、我々はそれをサーバーのホスティングで行うことはできません。 –

+0

ホスティングサーバー上のPHP設定に影響する確実な方法はありません(私はあなたがサードパーティのホストについて話していると仮定しています)。他のものでは、特定の場所に独自のphp.iniファイルを置くことができます。他のものは.htaccessファイルによる変更を許可します。 php_value upload_max_filesize 10M –

+0

はいSvemir。私は第三者ホストを使用しています。実際に私は.htaccessにいくつかのPHP設定を書いています。しかし、私のホスティングサーバーがPHPをCGIモードで実行するように設定しているため、動作しません。 –

関連する問題