タグ

ブックマーク / tech.respect-pal.jp (8)

  • 作って覚えるリバースプロキシ | 東北ギーク

    今回はリバースプロキシについて勉強してみました。 「リバースプロキシってなんなのさ」という方は一緒に手を動かしながらご覧ください。 なお、今回の目的はあくまで「プロキシサーバとはなにかを理解すること」なので、実際に運用するときに大事な設定をすっ飛ばしたりしています。 そのあたりの詳細の理解については参考リンクなどをもとにして深めていただければと思います。 まず、「リバースプロキシ」とはなにか ひとまず愚直にWikipediaで調べてみましょう。 リバースプロキシ(英: Reverse proxy)または逆プロキシは、特定のサーバへの要求を必ず経由するように設置されたプロキシサーバ。一般的なプロキシとは異なり不特定多数のサーバを対象としない。リバースプロキシは、不特定多数のクライアントから寄せられる要求に対して、応答を肩代わりすることにより特定のサーバの負担を軽減したり、アクセスを制限するこ

    作って覚えるリバースプロキシ | 東北ギーク
  • そろそろDockerを始めないとやばいと思い始めたあなたへ | 東北ギーク

    なるほど、先ほどのエラーはrootのパスワードを設定するか、空のパスワードでもいいのか、ランダムパスワードでいいのかを指定してくれ、というものだったようです。 # docker run --name app-db -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=app mysql:latest ということで環境変数を設定してコンテナを起動します。環境変数の設定は-eオプションです。 ついでにDB作成用の環境変数も設定してみました。 Error response from daemon: Conflict. The name "app-db" is already in use by container bd44a80999fb. You have to delete (or rename) that container to be able to

    そろそろDockerを始めないとやばいと思い始めたあなたへ | 東北ギーク
  • CakePHPとキャッシュのいろいろについて | 東北ギーク

    はじめまして。リスペクトの山内です。 昨年度プログラマとして新卒で入社し、ようやくプログラマ歴二年目に突入したところです。 さて、今回ブログを初めて書くにあたり、キャッシュについて取り上げてみようと思います。 データベースに無駄なリクエストを送らないようにしたりして処理を高速化する便利機能ですが、プログラミング初心者だと、なかなか処理速度にまで目が行かず、キャッシュにじっくり触る機会も少ないのではないでしょうか。 かくいう自分もそんなプログラミング初心者の一人なので、初心者脱却を目指してキャッシュについて調べてみました。 以下、概要です。 記事は CakePHPでのCacheクラスの使い方 CakePHPで使用できるキャッシュシステムの導入方法 について取り上げます。 今回の環境 CentOS 6.7 Apache 2.2.15 PHP 5.5.28 CakePHP 2.8.3 Cake

    CakePHPとキャッシュのいろいろについて | 東北ギーク
  • FuelPHPのマイグレーションについて | 東北ギーク

    FuelPHP Advent Calendar 2015 の 9 日目担当の @sji_ch です。昨日は @tanaka8com さんの「初心者向け FuelPHP チュートリアルサイトを 1 年半運営した結果」でした。 この記事では FuelPHP のマイグレーション機能が何なのかの簡単なおさらい、少しだけ突っ込んだ内部挙動やアンドキュメンテッドな機能の話、おまけで開発版 1.8/develop で新しく追加された機能について、ざっくり書きます。 対象読者は以下のような人です。 FuelPHP のマイグレーションを使ったことがあり、変な使い方をして困ったけどよく分からないうちに解決してしまった的な経験があるので、細かい挙動をもっと知りたい、でもソース読むのはかったるいという人 そこそこ暇な人 「変な使い方をして困った」というのは、たとえば Git で他の開発者と一緒に開発していて 他の

  • CakePHP1.3→2.6のアップグレード時に発生した作業や注意点について | 東北ギーク

    こんにちは。リスペクトの木村です。 CakePHPで運用しているサイトがいくつかあるのですが、その一部について1.3から2.6へアップグレードする機会がありました。 フレームワークのコア部分のアップグレードというと何かしらのトラブルが発生する印象があります(メジャーバージョンアップなら尚更)が、例に漏れずすんなりと終わる事はありませんでした・・・。 そこで、今回はアップグレードの中で行った作業やすんなり行かなかったポイントについて、解決策と合わせてご紹介したいと思います。 アップグレードに踏み切った理由 そもそも、何故アップグレードに踏み切ったか、という所を簡単にご紹介します。 諸事情ありますが・・・ オンプレミスから、クラウド(AWS)へ移行する事になった ApacheやPHPといったミドルウェアのバージョンが上がったり、サーバ構成が変更されるため、プログラムをある程度整理したい リファ

  • PHP による hello world 入門 | 東北ギーク

    知る者は言わず、言う者は知らず — 老子 世界で最も有名なプログラムの 1 つに、 hello world というものがあります。 <?php echo 'hello, world'; 出力先に対して「hello, world」という 12 字を書き込むだけの単純なプログラムで、プログラミング言語やライブラリの利用例を最小限の形で示すものです。 この記事ではメジャーな Web プログラミング言語の 1 つである PHP 処理系が、hello world をどのように実行するのかについて、簡単に解説します。 以下の 4 節で構成されています。 「PHP スクリプト実行の大体の流れ」は実行時の概略を箇条書きでまとめたものです。 「SAPI」では、PHP 処理系の起動のされ方についての基礎知識を解説します。 「Zend Engine とオペコード」は PHP 公式処理系の仮想マシンの命令と、PH

    PHP による hello world 入門 | 東北ギーク
  • メール回りのテストやデバッグには「MailCatcher」が便利ですぞ | 東北ギーク

    こんにちは。リスペクトの木村です。 今日は、「MailCatcher」というRubyで使うGemライブラリの話をお送りします。 MailCatcher とは Samuel Cochran氏が開発した、シンプルなSMTPサーバーです。特に細かい設定は不要で、起動するだけでSMTPサーバーが起動します。(ポートは1025番) これだけであればよくあるSMTPサーバーなのですが、MailCatcherの特徴は「SMTPサーバーを経由したメールをブラウザ上から確認できる」という所にあります。送信しようとしたメールはMailCatcherのSMTPサーバーから先には送信されません。 Webサーバーが同時に起動(ポートは1080番)するので、ブラウザからアクセスすると下記のような画面が表示されるので、そこから確認できます。 届いたメールはほぼリアルタイムで受信トレイに表示されるため、リロードの必要はあ

    メール回りのテストやデバッグには「MailCatcher」が便利ですぞ | 東北ギーク
  • 【導入決定!】PHP7で実装されるスカラー型宣言とは? | 東北ギーク

    * NaN でなく PHP_INT_MIN から PHP_INT_MAX までの範囲内の値に限る ** 数値形の文字列のみ。数値形の文字列に他の文字が続く場合も使えるが、 Notice が出る *** __toString メソッドを持つもののみ 弱い型検査モードで行われる暗黙の型変換は、PHP が従来他の構文(算術演算子や条件式、組み込み関数の呼び出しなど)で行ってきたのと同等のものです。 厳密モード 一方、厳密な型検査のモードを使う場合は、関数は宣言されたのと正確に一致する型のみを受け付けるようになります(int → float の拡大変換をのぞく)。 ファイルの先頭に declare(strict_types=1); と書くことで、そのファイル内での関数呼び出しの際に厳密モードでの型検査が行われるようになります*1。 以下のように使います。 <?php declare(strict_

    【導入決定!】PHP7で実装されるスカラー型宣言とは? | 東北ギーク
  • 1