タグ

phpに関するmhagのブックマーク (14)

  • 徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2012

    Internet Week 2010 S3 今日こそわかる、安全なWebアプリの作り方2010 http://www.nic.ad.jp/iw2010/program/s3/

    徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2012
  • DotCloud で PHP アプリを設置してみたときの色々 - 肉とビールとパンケーキ by @sotarok

    beta の invite もらったので DotCloud で遊んでみました。 dotCloud - One home for all your apps アプリ1つくらい設置してみないとなんだかよくわからないよねってことで、とりあえずどこで公開するかなーと思っていた、paste アプリ を設置してみた。 Pastit: http://www.pastit.dotcloud.com/ Pastit GitHub: https://github.com/sotarok/pastit/ DotCloud の PHP の環境は、Ubuntu 上の nginx + php5-fpm (PHP 5.3.2) が標準で、なんというか時代の流れを感じました。いいね! のは、まあいいとして、まぁ PHP アプリなんてものはたいてい Apache で動くことが前提とされてるもので (そうなのか? いや、そう

    DotCloud で PHP アプリを設置してみたときの色々 - 肉とビールとパンケーキ by @sotarok
  • 新卒インフラエンジニア2年目

  • PHPerなら知っておいて損はない10の関数

    こんにちは。小川です。 日は数あるPHPの関数の中でも、わりと知られてそうで実は知らない人もいるかもしれない便利な関数をご紹介します。 ■nl2br 改行コードを<br />に変換する関数です。 <?php $string = <<<EOS foo bar baz EOS; echo nl2br($string);

    PHPerなら知っておいて損はない10の関数
    mhag
    mhag 2010/11/26
  • PHPによる大規模商用サービスの裏側 ― @IT

    2008年7月21日、日PHPユーザ会主催のイベント「PHPカンファレンス2008」が東京・大田区産業プラザ(PiO)で開催された。 PHP5.3やPHP6の最新動向をお届けした前編「PHPに押し寄せるリスクと国際化の波」に引き続き、中編ではぐるなび、楽天、サイボウズといった企業におけるPHP開発事例の裏側をレポートする。 手作り感たっぷりのぐるなびがのポータルサイトになるまで ぐるなびは、日における飲店情報を扱う草分け的Webサイトであり、代表的な“”のポータルサイトの1つといっても過言はない。1996年6月に、交通広告代理店NKBの1事業部門としてスタートしたぐるなびは、2000年2月に株式会社として独立する。以来、さまざまなに関する情報サービスを立ち上げ、月間7億2000万PV(2007年12月)、会員数588万人を記録するほどになった。 ぐるなびの技術departmen

    mhag
    mhag 2008/08/28
  • Memcacheはやっぱりすごかった

    森川です。恥ずかしながらmemcacheを使うくらいならtmpfsとかMySQLのHEAPテーブルを使えばいいじゃん、などと思っていたのですが、今回簡単なベンチマークをやってみて心を入れ替えました。 はい、memcacheは偉大です。すごく速いです。 テストとして10万件のデータをINSERTして、そこから該当するデータを10万件取得します。まずはmemcacheを使用した場合です。 今回はdagレポジトリのRPM版memcachedとソースからインストールしたPHP 5.2.3を使用してpecl installでmemcacheエクステンションをインストールしています。memcachedの設定はデフォルトのままです。 # yum install memcached # pecl install memcache # vi /usr/local/lib/php.ini extension=

    Memcacheはやっぱりすごかった
  • 我々は公共性の進化に見あった速度で進化しているか - アンカテ

    Attacking PHP - Matzにっき(2008-01-26) まつもとさんのこのエントリから凄い騒ぎになっているようだけど、ここで一番重要なことは、PHPRubyがどうのこうのでなくて Webアプリケーションをなめるな こっちの方だと思う。 「初心者にやさしい言語(技術、方法論)の開発」→「質的な問題の隠蔽と関係者の人口増加の同時進行」→「問題の拡散」というパターンはこれまで何度も繰り返されてきたことだ。 たとえば、VisualBasicやAccessやExcelのユーザが増えはじめた時は、「DBをなめるな」と私は思った。データベースというものは、しっかり業務分析をした上で、論理設計と物理設計をきちんとしないと、最後には破綻する。イージーなツールにも使い道はあるけど、明かに想定を超えた使い方で業務ソフトを作ってしまい、つぎはぎだらけになって収拾がつかなくなる例を何度も見てきた

    我々は公共性の進化に見あった速度で進化しているか - アンカテ
  • Railsの画面生成を10倍高速化する方法 - 世界線航跡蔵

    RailsでPageキャッシュをより広く活用する方法を考えてみました。以下、ちょっと長く前置きが続きます。 Rails遅杉 Railsは遅い。何が遅いって、Rubyが遅くてRoutingが遅くてRDBとRHTMLが遅い。RDBが遅いのは大抵のWebアプリケーションでは変わらない話、で、だからRailsなんかが評価される余地があるんだよね。RubyやRHTMLの遅さは柔軟性の代償として受け入れよう。なにしろRDBがもともと遅いんだから。ただ、Routingは無駄に高機能だったりして頭にくる。Rhino on RailsのSteve YeggeもRoutingは黒魔術だと言っていたし。私はActionPackの全てが黒魔術だと思うけど。 そういう訳で、RoutingをCで書き直すのはドリコムのみなさんがいつかやってくれると期待するとして(可能なら手伝いたいけどね)、当面の対応としてはキャッシュ

    Railsの画面生成を10倍高速化する方法 - 世界線航跡蔵
  • ウノウラボ Unoh Labs: メンテナンス画面を簡単に出してみる

    カレーはあまり好きじゃないKeitaです。 映画サイトの映画生活のデザインリニューアルをして、いくつかデザイン以外の修正もあり、サーバ停止時間が発生するため、メンテナンス画面を作ることにしました。今日はその簡単なトピックスを書いてみたいと思います。 まず最初に、メンテナンス画面は次のような形の要件があるかなと思っています。 ドメイン以下すべてがメンテナンス画面になる クローラー対策でヘッダで503を出力する 癒される 特にクローラー対策は、クローラーがきておかしいものをキャッシュされると結構痛いかなと思うので、503が的確かはともかく、そこらへんのエラーを出すことにしました。 最初、ここら辺のすべての処理をmod_rewriteだけで実現できるかなと思ったのですが、残念ながら、mod_rewriteでは300番系のエラーを出すことができますが、503のエラーは出せないようなのでさくっ

  • ウノウラボ Unoh Labs: Feedcreatorのご紹介

    yamaokaです。 PHPRSSフィードを出力する場合、 皆さんはどうされているでしょうか。 Smartyなどの テンプレートエンジンを利用して自前で組み立てるのもいいですが、 RSSフィード生成用のライブラリを使うと便利です。 Feedcreatorは、 SourceForge.netで 開発されているPHPRSSフィード生成ライブラリです。 FeedCreator.class.phpを ベースにして開発されています。 RSS 0.91/1.0/2.0、Atom 0.3/1.0のフォーマットにそれぞれ対応しています。 また、PIE 1.0やOPML 1.0などにも対応。ライセンスはLGPLです。 ライブラリをダウンロードして展開すると、 「official_demo.php」というファイルがあるので目を通しておきましょう。 おおよその処理の流れがつかめるかと思います。 利用例 ライ

    mhag
    mhag 2007/06/07
  • Perl、PHPでGooglebotを一定の確率ではじく

    PerlPHPGooglebotを一定の確率ではじく 2007-05-01-2 [Programming] 「動的生成ページへのGooglebot(Googleのクローラ)のアクセス数 が多すぎてサーバに負荷がかかりすぎる問題」に悩まされています。 robots.txt の Crawl-delay は効かないし[2007-03-21-1]、 Googleウェブマスターツールでクロール率を低く設定しても ある回数よりも下がらないしで困っていました。 アクセス禁止にすれば完全解決なのですが、 それにより検索されなくなるのはファインダビリティが下がって嫌なので、 とりあえずランダムで 503 を返すことで対処しました。 ときどき503が出ることにより、しばらくするとGooglebotが 「サーバが混んでいるんだな」と思ってくれるみたいで、 結果としてクローラのアクセス数が激減、かつ、検索結果

    Perl、PHPでGooglebotを一定の確率ではじく
  • PHP Sessions - Files vs Database Based

    One may think changing PHP session handler from file based to database driven is fully transparent. In many cases it is, sometimes however it may cause some unexpected problems as happened to one of our customers. If you use file based sessions PHP will lock session file for whole script execution duration, which means all requests from the same sessions will be serialized on PHP level, which mean

  • PHPのセッションをDBに格納するチュートリアル:phpspot開発日誌

    Chris Shiflett: Guru Speak: Storing Sessions in a Database While the default session storage mechanism is adequate for many PHP developers, you might find yourself wanting to modify its behavior from time to time. One of the most common reasons for wanting to change the default behavior is to store sessions in a database rather than the filesystem. The top reasons for this desire are: PHPのセッションをDB

  • PHPとRubyの文法面での比較

    PHPRubyの文法面および主要な機能にのみ注目して(ラフな)比較を行った。そのため、各種関数などにはほとんど触れていない。 式と文 やや便宜的な説明になるがPHPの式および文の特徴を以下に示す。 なんらかの記述を式と呼ぶ 式は値を持つことも持たないこともある 関数は必ず返り値を持つが、echoなど一見関数に見えるものの中には値を返さないものもある 文は式を;で終えたもの Rubyの式および文の特徴を以下に示す。 なんらかの記述を式と呼ぶ 厳密にいうと式は値を持つことも持たないこともあるが、Rubyではほとんどすべての記述が値を持つと考えてよい ifやfor、メソッド定義も値を返す 文は式からなり終端を明示するために;を付けてもよい 通常はつけない 複数の文字を一行に書くときには必要 ブロック 「ブロック」といったときPHPRubyで意味するところはかなり違う。 まずPHPでいうブロッ

    mhag
    mhag 2007/03/26
  • 1