AWS / PHP / Python ちょいメモ

amazon web service , PHP, Python を使ったときのメモ。日本語でググってもわからなかった事を中心に。

PHP

Python 3 の Ubuntu Server でのサポート履歴

先日実施した、Ubuntu Server のアップグレード。過去の記憶が少しもどってきて、Apache 2.2 から 2.4に変わった時に、軒並みサイト落ちたなとか思い出してきたw18.04 までいくか? 20.04 まで目指しちゃうか?を決めるために、リリースノートを参考に、デ…

php シェルを使って簡単に検証

ちょっとしたコードの動作を確認したい場合に使えると思う。というか使った。インタラクティブ Shell便利ー $ man php ... -a Run PHP interactively. This lets you enter snippets of PHP code that directly get executed. When readline sup- port is en…

AWS SDK for PHP 2 / 3 ドキュメント作成環境

AWS SDK for PHP 2 / 3のドキュメントって、どんなもので作られてるのかなぁと見てみた。 API AWS SDK for PHP 3.x AWS SDK for PHP | AWS SDK for PHP apigen API documentation generator for php 5.3+ NameSpaceなどにも対応したAPIドキュメント生成ツー…

CakePHP 多言語化ステップ

CakePHPのi18n(+10n?)機能を使うと、Webページの文章の多言語はもとより、404, 500エラーなどのエラーページのメッセージなども多言語化できます。そもそも、デフォルトで生成されるコード(Layout/default.ctpなど)は、多言語化利用を前提としたつくり…

CakePHP Upload プラグイン TIPS

以前使った CakePHP Upload Pluginを、久しぶりに使った際のメモ。 以前の利用時メモは、こちら > CakePHP2.x対応 ファイルアップロード機能追加プラグイン - AWS / PHP / Python ちょいメモ 。 ドキュメント Welcome to CakePHP-Upload’s documentation! — …

Imagick for PHP をインストール on RHEL

UbuntuからRedHatに引っ越したとろ、PHPのImagick extensionがyumで取得できない事をに焦った時の対応履歴。PPAみたいなリポジトリ追加しての対応方法もあるんだろうなぁと思いつつ、上手くいったので make install っぽい形で進めました。 RedHat Enterpris…

PHP on Apache2.4 & RedHat 6 (by SCL) その2

mod_php を使う方法に変更。RedHat 6 by SCL の環境構築は、こちらに落ち着きそうです。使ってるのは Apache 2.4.6, PHP 5.5.6。先日書いた PHP on Apache2.4 & RedHat 6 (by SCL) - AWS / PHP / Python ちょいメモ にて、FastCGIを使ってホストする方法をま…

PHP on Apache2.4 & RedHat 6 (by SCL)

利用している RedHat 6 のサーバーに、PHPを追加サポートする事に。以前 Redhat6.x + SCL 使う時に気をつけたい3つのポイント - AWS / PHP / Python ちょいメモ で書いた SCLの仕組みを使って構築しました。たぶん、CentOS 6 + SCL のケースも同じで行ける…

CakePHP2.x で find() 取得したデーターのデフォルトはstring型

CakePHP2.xでは、MySQLへのアクセスがPDO(PHP Data Objects)を利用しているため、PDO(mysql)のデフォルト設定の影響を受けて、この動作になるそうです。PHP5.3以上の環境だと「PDO::ATTR_EMULATE_PREPARES = false」などを行うことで、この動作を変更する事…

CakePHP2.x対応 ファイルアップロード機能追加プラグイン

検索中心のWebサイト開発を行っており、表題の機能が欲しくて調査。この2つのどちからになりそうです。プラグインを語れるぐらい使い込んではいませんが、まとめてみます。# 数多くのプラグインが出ているのがメジャーなフレームワークを使うメリットだなぁ…

SDKドキュメントにcontributeしようメモ(2)

前回のエントリー で、自分でハードルを上げてましたが、別サービス:SimpleDbを見てみたら、もっとライトで良い気がしてきました。 構造を探ってみる(2): SimpleDbを参考に SimpleDbのUsersGuideを参考に、構造を探ってみました。 SimpleDbのUsersGuideに該…

SDKドキュメントにcontributeしようメモ(1)

aws-sdk-php v2のUserGuideドキュメント、Auto Scaling, Amazon Elastic Compute Cloud, Amazon Elastic MapReduce, Amazon Glacier など、まだincomplete(完成してない)ものがチラホラあります。API referenceを見れば使えるので、そこまで困りませんが、…

S3バケットとフォルダのデーター同期

PHP SDK v2になって、(たぶん)新しく増えたS3の UploadSyncBuilder が便利。単純なフォルダ同期から、globしたファイルだけをアップしたり、ファイル名を変換しながらアップしたりできる。 AWS SDK for PHP公式 Syncing data with Amazon S3 uploadDirecto…

S3バケットから正規表現にマッチするファイル一覧を取得

S3バケット内のファイルを、正規表現にマッチしたものだけ取り出したいのですが、以前のSDKにはあったメソッドが、現在のv2にはなかったので、それっぽいものを作ってみました。 v2 に map_string( $pcre ) 次のコマンドで、イテレーターオブジェクトを取得…

SimpleDbのドメイン存在確認方法

タイトルの通りのメソッドがSDK for PHP v2に見つからなかったので、代案を考えた。というエントリー。S3だとS3Clientに doesBucketExist() があり、バケットの存在確認ができ、booleanで結果が返ってきます。 AWS SDK for PHP 2 : doesBucketExist() Simple…

AWS SDK for PHP 2 を Composer経由でセットアップ

PHPのライブラリ管理として有名なのは pear なのかと思います。ですが、AWS SDK for PHPでは、Composerの利用を推奨してましたので、こちらを利用してみました。 簡単な記述で、自身のプログラムとの依存関係が明確になるのが良いですね。依存するバージョン…

Amazon S3 stream wrapper で S3 操作時の注意点

S3を触っていて、これは便利と思った機能。「s3」というプロトコルが使えるようになり、ローカルのファイル操作と同じように、S3上のファイルを触れるようになります。触って、ちょとだけはまったのが次のポイント。※2013/08/13に修正・追記 S3のフォルダは …

curl の SSL証明書関連エラー対策 (cURL error code 60)

AWS SDK for php 1の1.6.2と2.4.2を一緒に使ったときに遭遇。v1のオブジェクトでだけ該当エラーがでて、v2のオブジェクトではエラーが出ない状態でした。 環境 Windows7(x64)のPHP 5.3.26 AWS SDK for PHP 2 (pear 使って用意) AWS SDK for PHP 1 (pearでは…

AWS SDK for PHP 1 自動設定ファイル探索

SDK for PHP v1には、設定ファイル(config.inc.php )を自動探索する仕組みがあるとのこと。 AWS SDK for PHPで"Failed to determine HOME directory after trying "sh: line 0: cd: /root: Permission denied"の対処法 v1.6.0から、次の定数で探索を停止で…

AWS SDK for PHP バージョン別ダウンロード

AWS SDK for PHP バージョン別ドキュメント で、違いを調べてみました。で、いざとなるとコードも必要です。コード管理はv1, v2共にGitなのでtag探せばあると思いますが、公開されてるパッケージがないか調べてみました。結果、stable版のみtgzパッケージが…

AWS SDK for PHP バージョン別ドキュメント

Amazonから提供されている、AWS SDK PHPは、現在2つのバージョンがあります(オリジナルとv2)。それぞれベースのフレームワークが異なるなど、全くの別物です。2013年7月現在では、v2のみがバージョンアップされてる状況なので、特に理由がなければ新しいバ…