はやわかり XREA

ナビゲーション

メニュー

パンくずリスト

「CGI・SSI・PHP」の FAQ

XREA や CORESERVER での CGI・SSI・PHP の利用に関するよくある質問集です。

質問リスト

Q. CGI は使用できますか?

はい、できます。

Q. CGI として使用できる言語は?

Perl、Ruby、Python、C / C++、PHP が使用できます。

  • C / C++ はあらかじめコンパイルしてアップロードしてください。
  • PHP は、拡張子が .php の場合は、FastCGI 版で動作します。
  • PHP を CGI として動作させるには、拡張子を .cgi にして、行頭に PHP のパス (#!/usr/local/bin/php) を追加してください。

Q. SSI は使用できますか?

はい、できます。

  • SSI を呼び出す HTML ファイルの拡張子は .shtml である必要があります。
  • セキュリティ上などの理由から、EXEC CMD は使用できません。EXEC CGI は使用可能です (→参考記事)。

Q. モジュール版の PHP は使用できますか?

2014 年に行われた大規模メンテナンスにより、全サービスにおいてモジュール版の PHP は廃止されました。現在は FastCGI 版の PHP が標準として提供されています。使い方は、以前提供されていたモジュール版とほとんど変わらないほか、セーフモードの制限が撤廃されています。

Q. セーフモードの制限がない PHP を使うことはできますか?

はい、いかなる使い方においてもセーフモードの制限はありません。

Q. CGI 版の PHP は使用できますか?

はい、できます。以下の内容を記述した .htaccess ファイルを設置すると、すべての PHP スクリプトが CGI として実行されるようになります (→ 参考記事)。この方法は XREA / CORESERVER 独自のものであり、他社のサーバでは使用できません。

AddHandler application/x-httpd-phpcgi .php

# PHP のバージョン (5.2 〜 5.4, 6) を指定したい場合
AddHandler application/x-httpd-php52cgi .php
AddHandler application/x-httpd-php53cgi .php
AddHandler application/x-httpd-php54cgi .php
AddHandler application/x-httpd-php6cgi .php

特定のファイルのみ CGI の PHP を使用したい場合は、以下のように記述します。

<Files (ファイル名)>
AddHandler application/x-httpd-phpcgi .php
</Files> 

また、拡張子を「.cgi」に変更し、スクリプトファイルの一行目に以下のおまじないを挿入することでも CGI 版の PHP を使用できます。

#!/usr/local/bin/php

Q. PHP のバージョンはいくつですか?

PHP 5 (日本語対応済み) が用意されています。マイナーバージョンはサーバによって異なります。なお、古い (番号が若い) XREA のサーバは長らく PHP 4 が標準となっていましたが、2012 年 3 〜 4 月にかけて行われた大規模メンテナンスにより、全て PHP 5 が標準に置き換わりました。

PHP 5 が標準のサーバで PHP 4 を使うことはできますか?

CGI 版の PHP を使用することで可能となります。たとえば、以下の内容を記述した .htaccess ファイルを設置すると、CGI 版の PHP 4 を使用するようになります (→ 参考記事)。

AddHandler application/x-httpd-php4cgi .php

特定のファイルのみ PHP 4 を使用したい場合は、以下のように記述します。

<Files (ファイル名)>
AddHandler application/x-httpd-php4cgi .php
</Files> 

Q. PHP の設定を変更することはできますか?

はい、呼び出される PHP を設置したディレクトリに「php.ini」という名前のファイルを設置することで、細かい設定の変更が可能です (→ 参考記事)。

php.ini で変更できる設定の一例は、以下の通りです。

## セキュリティ対策
register_globals = Off
display_errors = Off

## UTF8を標準の文字コードとする
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
;mbstring.http_output = UTF-8
mbstring.detect_order = auto

## EUC-JPを標準の文字コードとする
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
;mbstring.http_output = EUC-JP
mbstring.detect_order = auto

## SHIFT-JISを標準の文字コードとする
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
;mbstring.http_output = SJIS
mbstring.detect_order = auto

## 大きいファイルを投稿する
post_max_size = 50M
max_execution_time = 300
max_input_time = 600
memory_limit = 100M

## SQLiteモジュールを使う
extension_dir = "/usr/local/lib/php/extensions/"
extension=sqlite.so
extension=sqlite3.so

## ZendOptimizerを使う
zend_extension="/usr/local/Zend/lib/ZendOptimizer.so"
zend_optimizer.optimization_level=15

## ionCube Loaderを使う
zend_extension="/usr/local/ioncube/lib/ioncube_loader.so"

Q. それぞれのサーバのスペックや、Perl や PHP の細かいバージョン等を知ることはできますか?

以下のページに、各サーバに入っているソフトウェアのバージョンが掲載されています。

Q. SENDMAIL は使用できますか?

はい、できます。ただし、過去に悪用したユーザーがいたため、送信できる数に制限が掛かる場合があります。

Q. データベースは使用できますか?

はい、できます。MySQL と PostgreSQL が使用可能です。

ただし、ウェブアカウント名に - (ハイフン) が含まれる場合は使用できません。新規にアカウントを取得し直すか、アカウント名変更の申請が必要です。

Q. データベースはいくつ作成できますか?

XREA は無料アカウントでは 1 つ、XREA+ が適用されたアカウントでは 5 つまで作成可能です。CORESERVER CORE-MINI では 10 つまで、VALUE SERVER エコノミープランでは 1 つまでで、CORESERVER CORE-A 以上のプラン、および VALUE SERVER スタンダードプラン以上ではデータベースの個数の制限はありません (厳密には最大 9999 個)。

この個数は、MySQL と PostgreSQL のそれぞれでカウントされます。

Q. JSP / ASP は使用できますか?

使用できません。過去に JSP / ASP 専用サーバを増設するという形も検討されていましたが、この話は事実上立ち消え状態となっています。

Q. CGI 等で使用する各種パスを教えてください。

以下のとおりです。

絶対パス/virtual/アカウント名/
perl/usr/bin/perl
/usr/local/bin/perl
php (※1)/usr/local/bin/php
php3 (※2)/usr/local/bin/php3
php4/usr/local/bin/php4
php5/usr/local/bin/php5
php5.2/usr/local/bin/php52
php5.3/usr/local/bin/php53
php5.4/usr/local/bin/php54
php6/usr/local/bin/php6
ruby/usr/local/bin/ruby
python/usr/local/bin/python
sendmail/usr/sbin/sendmail
nkf/usr/local/bin/nkf
sh/bin/sh
csh/bin/csh
uuencode/usr/bin/uuencode

Q. CGI を設置する際に、cgi-bin ディレクトリを作成する必要はありますか?

ありません。どのディレクトリに設置しても動作します。

Q. アクセスカウンタ画像を表示する CGI を設置しましたが、うまく動作しません。

XREA の無料アカウントでうまく動作しない場合、CGI が生成したカウンタ画像を自動挿入広告が壊してしまっているためです。カウンタ画像を表示する CGI のみ、自動挿入広告を抑止してください。

  • public_html から 2 階層以内に「x」という名前のディレクトリを作り、その中に広告を抑止したいファイルを入れる。
  • ファイルの拡張子を .cgi から .xcg に変更する。

自動挿入広告の抑止 (広告非表示) についての詳細は自動挿入広告の FAQ をご覧ください。

Q. CGI を外部のサイトから呼び出すことはできますか?

できますし、CGI だけの利用も可能です。

  • 有料アカウントである XREA+ や CORESERVER、VALUE SERVER では、外部からの呼び出しでも通常の CGI と同条件で使用できます。
  • 無料アカウントの場合、外部からの呼び出しにおいて一部禁止・制限される事項があります。
無料アカウントでの禁止・制限事項

無料アカウントでは、以下の条件に該当する場合、CGI を外部から呼び出すことができません。

  1. 該当の CGI がアクセスカウンタ、アクセス解析など、使用の際の広告表示が不可能な CGI である。
  2. 該当の CGI の広告の位置を移動している (自動挿入広告に頼るか、広告を最上部に取り付ける必要があります)。
  3. 該当の CGI が高負荷がかかるゲーム CGI である。
  4. 該当の CGI がチャット CGI である。

また、上記に該当しない場合でも、以下の点にご注意ください。

  • 他ユーザーの迷惑になると判断された場合は、使用を停止されます。
  • アカウントの削除基準が通常利用よりも厳しくなります。
  • CGI のみの利用の場合も、必ずインデックスページを設置し、該当 CGI にリンクさせる必要があります。
広告表示のある CGI と一緒にカウンタ等の CGI を外部から使うのもダメですか?

ダメです (→参考記事)。無料アカウントでは、広告が表示されない CGI の外部からの呼び出しはいかなる場合でも全面禁止とされています。

呼び出し元に XREA の広告を貼りました。それでもカウンタ等の外部呼び出しはダメ?

XREA.COM の管理範囲を超えてしまいますので、ダメです (→参考記事)。しかし、幸いなことにアクセスカウンタ、アクセス解析はそれぞれ、COUNTER@XREAAccessAnalyzer.com として単独で提供されています。XREA.COM のユーザーでなくても使用できますので、そこまでしてまで使用されたいのであれば、代わりにこちらの使用を検討してみましょう。

Q. データベースを複数作成することはできますか?

XREA の無料アカウントでは、データベースは 1 アカウントに 1 つのみとなります。1 つのデータベース内に複数のテーブルをうまく作成するように工夫してください。

XREA+ が適用されたアカウントでは 5 つまで作成可能です。CORESERVER CORE-MINI では 10 つまで、VALUE SERVER エコノミープランでは 1 つまでで、CORESERVER CORE-A 以上のプラン、および VALUE SERVER スタンダードプラン以上ではデータベースの個数の制限はありません (厳密には最大 9999 個)。

この個数は、MySQL と PostgreSQL のそれぞれでカウントされます。

Q. データベースのデータベース名・ユーザー ID・パスワードは?

データベース名とユーザー ID は ウェブアカウント名と同じです。パスワードの初期設定はウェブアカウントのパスワードと同じですが、データベースの作成時に任意のパスワードを設定することができます。

XREA+ が適用されたアカウント、または CORESERVER、VALUE SERVER で複数データベースを作成する場合、2 つ目以降のデータベースのユーザー ID は、アカウント名に、アンダーバーと任意の名前が付加されたものとなります (例 : sample → sample_movabletype, sample_xoops など)。

Q. データベースを使用する CGI を使っていますが、接続が不安定です。なぜですか?

データベースへの接続は、データベースごとに同時接続数が制限 (XREA の場合最大 5 〜 10 接続まで) されています。この制限を超えた場合、接続に失敗します (→参考記事)。

Q. 以前 XREA のサイトに「データベースの容量は 5MB が目安」と書かれていました。どういうこと?

以前、XREA のサイトに「データベースの容量の目安」について書かれていました (この記述は現在は削除されており、ディスク容量までが目安とされています)。これはあくまでも目安であり、これを超過しても特に問題ありません。

XREA では、コンテンツ (HTML やスクリプト、画像など) 専用の 50 MB (〜 10 GB) + データベース専用の 5MB という容量を目安にしています。仮にデータベースが 50 MB あっても、コンテンツの容量が少なければ問題はありません (→参考記事)。

Q. チャット CGI は使用できますか?

基本的に設置可能ですが、性質上、多くの CGI リクエスト回数が発生するため、XREA の無料アカウントにおいては、サーバにあまりに負荷がかかるスクリプトは禁止とされています。禁止される CGI スクリプト基準は「管理画面で確認できる「負荷率」が 50 ポイントを超える」かどうかです。ただし、サーバの性能はこの基準が決められた当時より段違いに向上していますので、余程のことがなければここまで到達することはないでしょう。

また、わざわざ自前で設置しなくても CHAT@XREA という無料サービスも用意されています。

Q. ゲーム CGI (CGI スクリプトで作られたブラウザゲーム) は設置できますか?

XREA においては、ゲーム CGI に関する禁止事項があります。ゲーム CGI のすべてが禁止されているわけではありませんが、サーバに悪影響を与える CGI は明確に禁止されています。たとえば、以下のいずれかに該当するゲーム CGI は設置してはいけません。

  • サーバに大きな負荷を与えるもの。
    ゲーム CGI によっては、たった一回の呼び出しでも大きな負荷を与えます。
  • ゲームの性質上、CGI に連続的なアクセスが発生してしまうもの (シミュレーションゲームなど)。
    一部の CGI ゲームでは、1 人で 1 時間に数百回リロードを繰り返すようなものが存在します。このようなものは、サーバに大きな負荷を与えてしまいます。

「箱庭諸島」や「FFAdventure」等、一部のゲーム CGI は、サーバの運営に支障をきたすほど高負荷で有名なうえに、連続的なアクセスも頻繁に起こります。そのため、XREA では (実質的な負荷の有無に関わらず) 設置そのものが禁止されています。

「連続的なアクセス」の具体的な定義は?

ユーザー一人あたりの CGI 呼び出し回数が 1 〜 3 回、多くても 10 回以内であれば許容範囲です (→参考記事)。それ以上になると「連続的なアクセスが発生している」と見なされます。

たとえば、1 回の呼び出しで終了するようなおみくじ CGI は設置可能です (禁止どころか、むしろ、サイト内のアクセサリーや息抜きとして良い役割を果たしています)。また、「CGI を使用せず JavaScript や Flash などブラウザ内の処理で動作するゲーム」と「CGI で動作するスコアランキング」という組み合わせも、負荷・アクセス回数共に問題にならないため、設置可能です。

Q. PHP スクリプトで作られたブラウザゲームは設置できますか?

PHP スクリプトであっても、CGI スクリプトと同じ扱いになります。CGI スクリプトとは違って管理画面で確認できる「負荷率」には加算されませんが、負荷の高いものや、アクセスに連続性のあるものは設置できません。詳しくは、「ゲーム CGI (CGI スクリプトで作られたブラウザゲーム) は設置できますか?」をご覧ください (→参考記事)。

Q. CGI がエラーで動きません。エラーの内容がわからないのですが、どうすれば?

XREA と CORESERVER では、CGI の拡張子を「cgid」に変更してから実行すれば、エラーの内容を確認することができます。VALUE SERVER ではこの方法は使用できません。

ただし、XREA 等の共用サーバを CGI の実験目的に使うのは迷惑行為であり、禁止行為でもあります。絶対にやめましょう。CGI のテストは自分のパソコンで行うことが可能です (→参考サイト)。

Q. SENDMAIL を利用したメーリングリストやメールマガジンの運用はできますか?

XREA ではできません (→参考記事)。ウェブサイトの公開から大きく外れた目的に使用することはできません。専用のサービスを利用しましょう。

CORESERVER、および VALUE SERVER では、メールの最大送信数が明確に規定されているため、迷惑メールなどスパムの類いでなければ、制限内で運用することに特に問題は無いようです。

メーリングリストの機能が用意されているサービスもあります

XREA Mail&Backup および CORESERVER.JP では、メーリングリストの機能が標準で用意されています。また、CORESERVER.JP ではメールマガジンの機能も準備中のようです。ただし、2009 年 10 月現在、メーリングリスト機能は不具合や不完全な仕様が報告されています。そのため、「はやわかり XREA」では、メーリングリスト機能の使用はおすすめしていません。

Q. Movable Type を設置したいのですが、うまくいきません。

サポート掲示板に専用スレッドがありますので、設置方法の質問はこちらで行うことが可能です (サポートへ設置方法を問い合わせることは控えましょう)。また、設置方法の解説、設置 CGI が公式的に提供されています (→参考記事)。

また、VALUE SERVER では、管理画面の「CGI インストール」から自動インストールを行うことができます。

PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.003 秒 | このページの最終更新 : 2015/07/10 (金) 02:23:47 (714d) | 編集(管理用)