作成者別アーカイブ:

Python3: ちょっとしたWeb API開発にはPython Flaskがおすすめ

 最近、小物のWeb API開発が結構あって色々な開発方法を試してみていたんだけど、ほぼ最適解と思える物がPython Flaskだった。

続きを読む

(49)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

VisualStudio2017でGitHub SSH

 VisualStudio2017では特に何も追加せずともGitHubのプライベートリポジトリにSSHで繋がります。
 gitコマンドもインストールされているので、PowerShellから扱うことが出来ます。
 必要なのは鍵を登録して、GitHubサーバのfingerprintをknown_hostsに追加することです。
 鍵登録は、WindowsならGitHub管理画面で作ってしまうのが早いでしょう、もちろん手持ちの鍵があればそれをGitHubに登録して、秘密鍵を~\.ssh\id_rsaに保存すればOKです。 普通に入れたWindows10ならば、C:\Users\UserName\.ssh\id_rsaになるでしょう。
 そして、known_hostsについてはコマンドラインで一度、作成したプロジェクトを上げれば登録されます。

・VisualStudio2017で新規プロジェクト作成
 作成時に右下にある新規Git作成のチェックをオン

・メニューの「チーム」から「接続の管理」を選ぶ

・「ローカルGitリポジトリ」欄に作ったプロジェクトがあるから、それを開く

・「設定」>「リポジトリの設定」>「リモート」で「追加」

・名前 origin フェッチ欄にgit@github.com…のSSH接続アドレスをGitHubからコピーしてくる

・PowerShellを開いてプロジェクトディレクトリへ移動
デフォルトなら C:\Users\UserName\Documents\Visual Studio 2017\Projects\ProjectName になるかと。
cd “~\Documents\Visual Studio 2017\Projects\MyProject”
git pull origin master
おなじみのSSH fingerprint確認が出るからyesして終了。

 以降は、VSのチーム画面からプル・プッシュ出来るようになってます。 もし、GitHubリポジトリ作成時に何かファイルを生成してしまっていたなら、コマンドラインで git push -f origin master で上書きしておきます。

 メンバーや別環境では、VSのチームエクスプローラでリモートリポジトリを取り込んでソリューションをロードすればそのまま開始できます。

(26)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

CentOS7でApache Python3 Flask

 さくらのVPS CentOS7で構築したサーバでFlask使ったWebAPI開発をはじめたのでメモ。
 一般にはNginxを使う様だけど、本番じゃないからパフォーマンスとか重視しないし、入ってるApacheで対応した。

 CentOS7には既にPython3.4が居たのでこいつを利用、PIPも入れて、devel系はmod-wsgiに必要。
 Flaskとmod-wsgiはpipで入れられた。

 あとは、httpd.confに書くだけ。

今回は/var/www/flaskに設置。
wsgiモジュールをロードして、WSGIアダプタを用意するだけ。

アダプタはこんな感じ

この場合は、myapp.pyに書いてあるappアプリを起動してる。

案外楽だった。

(73)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

PHP7: AWSとかNATの内側ホストから外側のActive限定FTPサーバに接続する2

 前回、Python2で書いたけど、実はアレは実験的な物で、本来はPHPで作られてるシステムで対応したかった。 
 と言うわけで、今回、PHP7.2に機能追加した(更に言えばPHP5.6なんだけど、機能追加なんでここには最新版を置いておく)
 本家に取り込んで欲しいけどまだMLに参加出来てないんで、とりあえずパッチを置いておく。

続きを読む

(23)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

Python2: AWSとかNATの内側ホストから外側のActive限定FTPサーバに接続する

 AWSのVPCとかの環境でNATが被さっちゃってるせいでActive FTPがうまくいかないことがあるんで対応した。

続きを読む

(46)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

MySQLでマルチマスタ – Galera Cluster

 MySQLでマルチマスタクラスタリングが出来る選択肢としてGaleraと言うやつがある。
 マルチマスタってのは、基本的なマスタ・スレーブ式のreplicationじゃなく、メンバー全てがマスタとして動作できるって事で、どのサーバに書き込んでも他のサーバに同期される。
 ロック問題とかさえ回避できれば比較的簡単に冗長性や性能を上げることができる夢のような話だけど、実際は書き込みのオーバーヘッドは結構大きいんで、性能は参照中心の構成じゃ無いとあまり上がらないんだけど、ノードが落ちたとしても何も手を入れずにシステムが勝手に動き続けるんで、利点は結構大きい。
 そんなわけで、今回、Galeraを構築してみた。

続きを読む

(105)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

Python3: CentOS6でSCLのPythonをCGIで使う apache / httpd

 ApacheのCGIでSCL版のPythonを利用する方法。
 既存で色々入ってるお名前.com VPSのお遊び環境でPython3のCGIを動かすためにちょいちょいいじってみた。

続きを読む

(85)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ