月別アーカイブ: 2014年5月

Amazon S3 ファイルアップロード 公開設定

Amazon S3マネジメントコンソールにログイン
S3_Management_Console

対象のバケットをクリック
「Upload」「Create Folder」「Actions」のボタンからいろいろ操作出来る。
S3_Management_Console

ファイルをアップロードしただけでは、閲覧制限がかかっているので、公開する場合は、設定を変更
設定を変更するファイルを選択して、右上の「Properties」をクリック
Arc_と_S3_Management_Console

「Permissions」のところを展開
「Add more permissions」クリック
Grantee :Everyoneを選択
Open/Downloadにチェック
「Save」クリック
S3_Management_Console

これで、Linkに書いてあるURLにアクセルすると、ファイルが見れるようになっている。

ただ、これだとファイル一つ一つの設定になる。
バケット配下の全コンテンツがPublicRead可能な状態になるよう変更

バケットを選択して、右上の「Properties」
「Permissions」のところを展開
S3_Management_Console
「Add bucket policy」をクリック

テキストエディタが立ち上がるので、下記を記述して「Save」クリック

{
“Statement”: [
{
“Sid”: “StmtXXXXXXX”,
“Action”: “s3:GetObject”,
“Effect”: “Allow”,
“Resource”: “arn:aws:s3:::<バケット名>/*”,
“Principal”: { “AWS”: “*” }
}
]
}

次回から編集する場合は、「Edit bucket policy」をクリック

参考ありがとう:
http://recipe.kc-cloud.jp/archives/853
http://www.xmisao.com/2013/02/03/s3-bucket-policy.html

Amazon S3 バケット作成

AWSマネジメントコンソールにログイン
AWS_Management_Console
S3マネジメントコンソールに入る

S3_Management_Console
「Create Bucket」クリック

Bucket Name:バケット名
Region:Tokyoを選択
S3_Management_Console

Amazon S3でのログを保存するように設定したいので、「Set Up Logging」をクリック
Enabled:チェックを入れる
Target Bucket:対象のバケットを選択
Target Prefix:勝手に「logs/」と入力されるのでそのまま
S3_Management_Console
「Create」クリック

S3_Management_Console

バケットが出来た!
ログ等の設定はバケット作成後でも大丈夫そう。

参考ありがとう:
http://recipe.kc-cloud.jp/archives/783

POSTデータが欠ける!?

今まで順調に動いていた環境で、「保存が出来ない」と言われることが出てきた。
テストデータだと問題ないので、データにより動きが違う。

とりあえずデバックして、POSTデータの中身を見てみると、
なんと、途中までしか入ってない!!
なんで!?

問題なく動くテストデータだと、すべてのPOSTデータが送られてくる。

ここは、Google先生に聞いてみるしかなさそう。

参考:
http://blog.livedoor.jp/erscape/archives/6825951.html
http://blog.livedoor.jp/erscape/archives/7361161.html

どうやら、PHP 5.3.9から「max_input_vars」が導入されたみたい。
デフォルトは、1000

確かに、データ数がそのくらい以降が切れてる・・

php.iniを確認するが、max_input_varsの記述がなかったので、
追加してみた。

max_input_vars = 2000

動いた〜♪

ちなみに、php_error.logを見てみると、
PHP Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini. in Unknown on line 0

というのがあった。

AWS(Amazon Web Service)登録

今回はAmazonのアカウントも新規作成して登録する。

1.サインイン & AWS アカウント作成
無料アカウント登録

e-mailを入力
「I am a new user.」を選択して、サインイン
Amazon_Web_Services_Sign_In

2.AWSログイン情報設定
My name is:名前をフルネームで入力(半角アルファベット)
My e-mail address is:ログインに利用するメールアドレス
Type it again:同じメールアドレスをもう一度
Enter a new password:ログイン時に使用するパスワード
Type it again:同じパスワードをもう一度
Amazon_Web_Services_Sign_In

3.お問い合わせ情報入力
画面にしたがい、情報入力。
右上のプルダウンで「日本語」を選択できるが、登録がうまくいかなかったので、Englishですすんだ。
日本語を選択しても記述をアルファベットにしたら大丈夫だったのかも?
電話番号は、アカウント確認に使用するため、携帯電話の場合は、非通知拒否などは解除しておく。
セキュリティチェックの文字を入力して、「続行」クリック
AWS_Console_-_Signup
AWS_Console_-_Signup

4.お支払い情報入力(クレジットカード情報登録)
必要事項を入力して「Continue」クリック
AWS_Console_-_Signup

5.自動音声電話による身元確認
AWS_Console_-_Signup
「Call me now」をクリック
画面にPINコード(4桁の数字)が表示され、電話がかかってくる。
音声にしたがって(画面がEnglishだったからか、英語だった)PINコードを入力。
AWS_Console_-_Signup

6.AWS サポートプランの選択
Basic(Free)を選択して、「Continue」クリック。
AWS_Console_-_Signup

アクティベーションが完了したら、登録したメールアドレスにメールがくるので、
使用を開始出来る。

参考:http://aws.amazon.com/jp/register-flow/

使い方参考:https://aws.amazon.com/jp/registration-confirmation/

Titanium 環境セットアップ

http://www.appcelerator.com/titanium/
iphoneアプリもAndroidアプリもJavaScriptでかけちゃう素敵な環境を構築することに。

無料だけど、ユーザー登録
が必要。

Sign_Up_for_an_Appcelerator_Developer_Account

登録したメールアドレスに認証メールが来るので、URLをクリックしてactivate
ログインすると、情報を追加で聞かれるので、登録

Resources
Get Started with Titanium > 1. Download Titanium Studio
のところで、対象を選んでダウンロード。(macを選んだ)

ダウンロードされた「Titanium_Studio.dmg」をクリック、applicationフォルダにドラッグする。

Titanium_Studio_

インストールされた Titanium Studioを起動
アプリ
workspaceの場所を指定
Workspace_Launcher_と_Titanium_StudioTitanium_Studio
ログイン情報を入力してログイン

Arc_と_Studio_-_Titanium_Studio_Dashboard_-_Titanium_Studio_-__Users_Maki_Dropbox_MAMP_dropbox_Titanium

立ち上げると、Titanium Update が出てくるので、インストール
プラットフォームを選択して、設定
Studio_-_Titanium_Studio_Dashboard_-_Titanium_Studio_-__Users_Maki_Dropbox_MAMP_dropbox_Titanium
スクリーンショット_2014_05_27_11_14

参考ありがとう:
http://akiyoko.hatenablog.jp/entry/2013/03/07/040122

正規表現 -ハイフン 判定

メールアドレスのチェックを正規表現で行っていたが、ハイフンが入らない。

ソースを見ても、ハイフンちゃんと入っているのに・・

[a-zA-Z0-9\._-¥+]

エスケープしたら、許可されるようになった。

[a-zA-Z0-9\._\-¥+]

でも、違う場所で
[a-zA-Z0-9_-]
と判定している時は、ハイフンがちゃんと許可される?

なんで? 納得いかん。。。

グーグル先生にきいてみる。

なんと!!!
正規表現で[ ]を利用した時のハイフンは、
最初か、最後におかないといけないらしい。

たしかに、0-9とかでハイフン使うし・・

ということで、
[a-zA-Z0-9\._¥+-]
これでOK!
納得!スッキリ!

参考ありがとう:http://www.4web8.com/3195.html