商品検索ページをサーバにアップしてみる
PHPとAPIで作るアフィリサイト作り。
商品検索ページの動作確認が終わったら、次はレンタルサーバーにファイルをアップして、動かしてみます。
PC上では動いても、サーバーの環境では上手く動かないことが多いので、どこを変えればよいか確認しておきます。
使用するレンタルサーバーも、スペックを確認する必要があります。
確認事項は、
- PHPなどのCGIプログラムを動かせるのかどうか。
- 外部WebAPI(楽天市場APIとかヤフーのAPIなど)を利用するサイトをアップしても良いのかどうか。
レンタルサーバーは、会社やサービスプランによって、許可される範囲がかなり違いますから、それを確認する必要があります私の場合は、バリュードメインのコアサーバーをメインに使っていますが、コアサーバーの場合は、PHPファイルをどこのディレクトリに置いても動きます。
また外部のwebAPIと頻繁に交信するサイトも作れます。
ハッスル・サーバーも使っていますが、こちらは外部WebAPIと頻繁に交信するサイトは禁止のようです。
禁止事項にも、「Amazon,楽天などの大量の商品を検索、表示、リンクさせるサイト」と言うのがありますから、サンプルファイルはアップして使えません。
こう言うサーバーの場合は、比較的安定して使えますから、静的ファイルを公開するのに使えます。
サンプルコードをサーバーにアップしてみる
それでは実際に、サーバーにアップロードしてみます。
サーバーにアップする前に、スマーティなどのライブラリ(スクリプト)の置き場所を決めてください後から作るプログラムは全て、この置き場所のスクリプトを呼び出して使う形にします。
ドメインごとにスマーティをアップロードしないといけないサーバーもあるようですが、そうでない場合は、毎回アップするのは時間がかかって大変です。
サーバーによってはスクリプトの置き場所が「cgi」とか「cgi-bin」に決まっていることもあります。
私の場合は「cgi」と言うディレクトリ(フォルダ)を作って、その中にスマーティのディレクトリを入れています。
★cgiディレクトリを作って、Smartyのファイルをアップする(コアサーバーでの例)この場合、サンプルスクリプト(serch.php)の「スマーティを使う準備」の部分のrequire_once('./Smarty/libs/Smarty.class.php');
の部分をrequire_once('/virtual/●あなたのサーバーID●/public_html/cgi/Smarty/libs/Smarty.class.php');
と言う風に書き換えます。
ただしこれはコアサーバーでの指定方法ですので、他のレンタルサーバーの場合は、指定方法を調べて書き換えてください私のサーバーにアップしたヤフーショッピング商品検索ページ