参考
SDK for Pythonをダウンロード
unzip google_appengine_1.9.25.zip
mv google_appengine ~/bin/
- PATHを追加しておく
~/.bashrc
export PATH=$PATH:$HOME/bin/google_appengine
ソース
wget https://console.developers.google.com/project/プロジェクトID/start/appengine
unzip master.zip
cd appengine-try-python-bottle-master/
appcfg.py -A プロジェクトID update .
WEBブラウザが起動し「The authentication flow has completed.」と表示される。
- http://プロジェクトID.appspot.com/ にアクセスし
「Hello World!」と表示されれば成功。
修正反映方法
main.py
def hello():
"""Return a friendly HTTP greeting."""
- return 'Hello World!'
+ return 'こんにちは'
appcfg.py -A プロジェクトID update .
「こんにちは」と表示されれば成功
PHP
- PythonのSDKにPHPのSDKも含まれています。
wget https://github.com/GoogleCloudPlatform/appengine-try-php/archive/master.zip
unzip master.zip
cd appengine-try-php-master
appcfg.py -A プロジェクトID update .
「Hello World!」と表示されれば成功。
修正反映方法
helloworld.php
<?php
- echo 'Hello, world!';
+ echo 'こんにちはPHP';
appcfg.py -A プロジェクトID update .
「こんにちは」と表示されれば成功
-
$_SERVER["REMOTE_ADDR"]
変数とか普通に使えるのでアクセス制限できて便利そう
ルーティングの追加
app.yaml
handlers:
-- url: /.*
- script: helloworld.php
+- url: /
+ script: index.php
+- url: /1
+ script: 1.php
こうしておくと、/にアクセスが来た時 index.php
/1 にアクセスが来た時1.phpが処理される。
データの保存
準備: Bucketを作る
- ストレージ>Cloud Storage>ブラウザ
- Bucketを作成。一意の名前をつける。
データの保存方法
helloworld.php
define(BUCKET, "gs://mybucket");
# text/plain で保存
$options = [ "gs" => [ "Content-Type" => "text/plain" ]];
$ctx = stream_context_create($options);
file_put_contents(BUCKET."/hello.txt", "データ1", 0, $ctx);
# binaly/octet-stream で保存
$fp = fopen(BUCKET."/hello2.txt", "w");
fwrite($fp, "データ2");
fclose($fp);
バケットにデータが保存されたことを確認。