タグ

ブックマーク / gihyo.jp (57)

  • 第44回 セキュリティ対策が確実に実施されない2つの理由 | gihyo.jp

    セキュリティ対策は言語やアプリケーションを問わず非常に重要です。しかし、取るべきセキュリティ対策が確実に実施されないケースが広く見受けられます。 最近の例では次のような物があります。 WordPress Meenews 5.1 Cross Site Scripting WordPress Enable-Latex Remote File Inclusion Dolibarr 3.1.0 RC Cross Site Scripting / SQL Injection 上のURLの脆弱性も対策が簡単なものが多いですが、対策が簡単なSQLインジェクションの脆弱性も数多く見つかっています。 CMS Balitbang 3.x SQL Injection AdaptCMS 2.x SQL Injection Icomex CMS SQL Injection なぜ簡単な対策で防げる脆弱性でもセキュリテ

    第44回 セキュリティ対策が確実に実施されない2つの理由 | gihyo.jp
  • 第10回 アイデアを目に見える形にしてこそのエンジニア | gihyo.jp

    とにかく手を動かすこと 若い日エンジニアと話していると、「⁠今の職場ではなかなか自分が作りたいものを作らせてもらえない」「⁠せっかくエンジニアになったのに、仕様書通りにプログラムを書くばかりでクリエイティビティを発揮するチャンスがない」などの声を聞くことが多い。 職場にもよるとは思うが、特にITゼネコンを頂点にした産業構造を持ちウォーターフォール型で開発を進める「IT産業」では、そんな思いをしている人もたくさんいると思う。 そんな人たちに私が勧めているのは、とにかく何としてでも自分の時間を見つけて、手を動かして自分の作りたいものを作りはじめることである。作りはじめて見えてくるものもたくさんあるし、上司を説得するにしろ、仲間を集めてベンチャー企業を起こすにしろ、投資家からの資金提供をしてもらうにしろ、何か動いているものがあるのとないのでは説得力に雲泥の差がある。 まずは時間をひねり出す

    第10回 アイデアを目に見える形にしてこそのエンジニア | gihyo.jp
  • 第15回 DateTime:APIの標準化をめざして | gihyo.jp

    Cから継承したAPI プログラマにとって、ログの解析や作成などに含まれる日付や時刻の操作は切っても切り離せない分野のひとつです。もちろんPerlにも日付や時刻を操作するための関数は組み込まれています。 ただし、Cから継承してきたlocaltime()やgmtime()の返り値は、お世辞にもわかりやすいとはいえません。リストコンテキストで呼び出せば年月日、時分秒などの値を取り出せるとはいえ、単一の配列で受け取ると、個々の要素を使うときに直感的ではなくなりますし、明示的な名前をつけたスカラー変数を並べて受け取るのはいかにも冗長です。 use strict; use warnings; # 短いけれど非直感的 my @tm = localtime(); $tm[5] += 1900; $tm[4]++; printf "%04d-%02d-%02d %02d:%02d:%02d\n", reve

    第15回 DateTime:APIの標準化をめざして | gihyo.jp
    norinico
    norinico 2011/11/18
  • 2011年のPerl | gihyo.jp

    あけましておめでとうございます。今回は新春特別企画ということで、2010年のPerl界を振り返りつつ、2011年のPerl界がどうなっていくかを、予定と期待を織りまぜながら見ていきましょう。 Perl 5.14 2010年のYAPC::Asiaでジェシー・ヴィンセント(Jesse Vincent)氏が紹介されていたように、Perl 5は現在、2011年4月に予定されているPerl 5.14のリリースに向けて最後の仕上げをしているところです。Perl 5.14は2010年の開発成果をまとめた定期リリースなのでPerlの根幹をゆるがす大きな仕様変更はありませんが、Perl体、コアモジュールともに細かなバグがいくつも修正されているほか、内部的にはさまざまな最適化が行われています。 一例を紹介しますと、Perl 5.14ではkeysやeach、あるいはpushやshiftのような、配列やハッシュ

    2011年のPerl | gihyo.jp
    norinico
    norinico 2011/11/15
  • 第1回 オープンソースのCMSで本格商用サイトを作ってみよう | gihyo.jp

    はじめに gihyo.jpをこよなく愛する読者のみなさん、こんにちは。 2009年夏に連載が終了した「そろそろLDAPにしてみないか?」以来の登場となります、中満英生です。あれから長男が生まれ、人間として一歩成長した気がする今日この頃です。 さて、筆者のバックグラウンドとしてはLinux/Solarisなどのサーバサイドやインフラ部分の比重が大きいのですが、今回からはこれまでと少し趣向を変えた記事をお届けしたいと思います。 突然ですが、筆者の両親は熊県の山鹿市というところで「有限会社なかみつ園」というお茶屋さんを経営しています。ちなみに、山鹿市は山鹿灯籠、山鹿温泉、スザンヌの出身地として有名です。 元々、お茶の製造、販売業をはじめたのは筆者の祖父なのですが、父がその後を継ぎ、現在では主に店舗やデパートで商品を販売しています。ここで、ありがちなパターンだとは思うのですが、父から「店頭販売だ

    第1回 オープンソースのCMSで本格商用サイトを作ってみよう | gihyo.jp
  • 第6回 PHP 5.3の変更点(その2) | gihyo.jp

    前回に引き続き、PHP 5.3の変更点を紹介します。 名前空間つきクラス/関数/定数のためのマクロ追加 PHP 5.3の目玉機能のひとつである名前空間を使った拡張モジュールを作成するために、いくつかのマクロが追加されています。 まずは名前付きのシンボルを定義するための共通マクロZEND_NS_NAME()を紹介します。 ZEND_NS_NAME()(Zend/zend_API.h) #define ZEND_NS_NAME(ns, name) ns"\\"name 名前空間の区切り文字“⁠\⁠”でくっつけているだけですね。 注意する点といえばns、nameともに文字列リテラルでないといけないぐらいでしょうか。以下に挙げる名前空間つきクラス/関数/定数のためのマクロはいずれもZEND_NS_NAME()を使っています。 名前空間つきクラス定義マクロ(Zend/zend_API.h) INIT

    第6回 PHP 5.3の変更点(その2) | gihyo.jp
    norinico
    norinico 2011/04/26
  • 特集:残り一年! PHP4からPHP5への移行|gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    特集:残り一年! PHP4からPHP5への移行|gihyo.jp
    norinico
    norinico 2011/04/26
  • 第41回 PHP 5.3.4におけるセキュリティ上重要な仕様変更 | gihyo.jp

    PHP 5.3.4のリリースは2010年12月にリリースされました。このリリースにはセキュリティ上重要な変更が追加されています。 Paths with NULL in them (foo\0bar.txt) are now considered as invalid. (Rasmus) パスに“⁠foo\0bar.txt⁠”などのようにNULLが含まれる場合は無効として処理される、とPHP 5.3.4のリリースノートには記載されています。PHP開発者の間でもあまり大きなニュースとして取り上げられていないので、この仕様変更をご存知でない方も多いと思います。2011年4月現在でもこの仕様変更はマニュアルには記載されていません。しかし、この修正はセキュリティ上非常に重要な意味を持っているので解説します。 仕様変更の必要性 PHP体はC言語で記述されているため、ファイルを開く場合、最終的にはC言

    第41回 PHP 5.3.4におけるセキュリティ上重要な仕様変更 | gihyo.jp
  • HTML5開発者の輪を明るく楽しく大きく拡げたい─第0回 HTML5プログラミング&クリエイティブ コンテスト | gihyo.jp

    Firefox、Chrome、Opera、Safariなど、現在、メジャーなブラウザの最新版のほとんどはHTML5に対応している。まもなく日語版も登場するMicrosoftのIE9もしかり。もっとも2、3年前なら、IE MicrosoftHTML5準拠を声高らかに宣言するようになるなんて、あまり想像できなかったわけなのだが……。 さて、日でのHTML5普及も着実に拡がりつつあるといっていいだろう。スマートフォンユーザの増加、そして前述のとおりIEのHTML5サポート宣言により、ここにきて一気に普及が加速していく可能性は高い。だが、その普及を支えるWeb制作者たちを見てみると、HTML5に興味はあるけれども、日常の業務に追われて、新しい知識を吸収する時間や余裕をなかなか作れないという開発者やデザイナーは少なくない。 とくに企業向けのWebサービス開発が業務の中心だったりするアプリ開発者

    HTML5開発者の輪を明るく楽しく大きく拡げたい─第0回 HTML5プログラミング&クリエイティブ コンテスト | gihyo.jp
  • 第9回 Facebookの「いいね!」と連携しよう | gihyo.jp

    はじめに 前回はHerokuのアドオン仕組みについて、エコシステムからおすすめアドオンなどを紹介しました。Herokuを利用するメリットをまた別の観点から理解していただけたかと思います。今回はマンガ共有アプリの開発を進めようと思います。Facebookのいいね!と連動する方法について紹介します。 Facebookの「いいね!」とは Facebookの特長として「いいね!」機能が挙げられます。友達のフィードに共感したり、面白いと思ったら下にある「いいね!」というボタンをクリックしてその友達に気軽にフィードバックしたり、Facebook Pageに「いいね!」を押してファンになって自分の最新情報に情報を受け取ったりするものです。Facebook内だけでなくAPIを利用して別のブログの中にいいね!ボタンを見ることも多くなりました。外部のシステムとの連携もどんどん進んでいます。このように外部のサイ

    第9回 Facebookの「いいね!」と連携しよう | gihyo.jp
    norinico
    norinico 2011/04/17
  • 第10回 日本のIPv4アドレスが枯渇 | gihyo.jp

    日、アジア太平洋地域及び日のIPv4アドレスが枯渇しました。具体的には、アジア太平洋地域のRIR(Regional Internet Registry)であるAPNICのIPv4アドレス在庫が枯渇しました。 「APNICにおけるIPv4アドレス在庫枯渇のお知らせおよび枯渇後のJPNICにおけるアドレス管理ポリシーのご案内」 「あれ?この前も枯渇のニュースがあったような……。」という人もいるかも知れませんが、2月に枯渇したのは中央在庫と呼ばれるIANA在庫です。 IANA在庫の枯渇のアナロジーとしては「IPv4アドレス製造工場で製造中止された状態」のようなものです(IANAはIPv4アドレスを作っているわけではないので製造工場というよりも巨大倉庫ですが、そこら辺は愛嬌ということで許してください⁠)⁠。 IANAからのIPv4アドレスブロックは世界5つのRIR(Regional Inter

    第10回 日本のIPv4アドレスが枯渇 | gihyo.jp
    norinico
    norinico 2011/04/17
  • 第6回 UNIXプログラミングの勘所(4) | gihyo.jp

    ファイルの保存 ここまでいくつかの見落としがちな処理を見てきましたが、最後にどんなプログラマでも必ず行う「ファイルの保存」についての注意点を考察してみたいと思います。 ファイルを確実に書き込むためには、どのようなコードを書けばよいでしょうか。「⁠fsync」を呼べばいい。それだけではありません。実際には、次の2点も必要になってきます。 (内容の差し替えだった場合に)書き換え途中の状態にならないこと ユーザに対して書き込み完了を返したあとは、ディスクがクラッシュしない限り、データが消えないこと UNIX系OSでこれらの要件を満たすには、まずテンポラリファイルに新しいデータを書いてディスクに同期し(①②⁠)⁠、(⁠必要ならば)古いファイルをバックアップファイル名を使っても参照できるよう別名を付与し(③⁠)⁠、次にテンポラリファイルのファイル名を差し替え対象になっているファイルの名前に切り替え(

    第6回 UNIXプログラミングの勘所(4) | gihyo.jp
    norinico
    norinico 2011/04/06
  • 第40回 Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない、という方に | gihyo.jp

    モダンPerlの世界へようこそ 第40回Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない、という方に テキストの整形はPerlの基 Perlは「Practical Extraction and Report Language」とも呼ばれるくらいで、正規表現などによる情報抽出機能と並んで、レポートの形を整えて出力する機能はPerlの根幹をなす部分といえます。もちろんそのもっとも原始的な形は二重引用符でくくられた文字列のなかにそのまま変数を埋め込むものです。 print "This report is created by $author."; もう少しこったことをしたければ、Cから受け継いだprintf系の構文を使えばよいでしょう。 printf "This report is created on %04d/%02d/%02d.", $year, $

    第40回 Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない、という方に | gihyo.jp
    norinico
    norinico 2011/03/25
  • マネタイズとアウトプットを意識する~エンジニアの視点から考えるネットサービス:エンジニアブレークスルー#02レポート | gihyo.jp

    マネタイズとアウトプットを意識する~エンジニアの視点から考えるネットサービス:エンジニアブレークスルー#02レポート エンジニアがどのようにしてブレークスルーしていけるか エンジニアブレークスルーは、その名のとおり「エンジニアがどのようにブレークスルーしていけるか」をテーマに、株式会社ゼロスタートコミュニケーションズ 山崎徳之氏を中心にスタートした活動。10月7日に、スタートアップデイティングの一企画として第1回が開催され、今回初の単独開催として、第2回目開催の運びとなった。今回は二部構成で、一部がパネルディスカッション、二部がパネリストと参加者の交流を兼ねたエンジニア査定大会が実施された。 イベントの企画者でもあり、モデレータを務めた山崎氏。 エンジニアの視点から考えるネットサービス 今回のパネリストは以下の通り。 米林正明 氏(株式会社Abby) 閑歳孝子 氏(株式会社ユーザーローカル

    マネタイズとアウトプットを意識する~エンジニアの視点から考えるネットサービス:エンジニアブレークスルー#02レポート | gihyo.jp
  • 第19回 サーバ運用監視のノウハウ(その3) | gihyo.jp

    ケーススタディ(1)サイト公開直後の膨大なトラフィックが発生したときの対応と防御策 オンラインショップやキャンペーンサイトなどを立ち上げる際、注意しなければならないのは、サイト公開直後のトラフィックです。サービス提供者は、少しでも多くの人にサイトを利用して欲しいこともあり、公開の直前・直後に大量のダイレクトメールを配信したり、ホームページで告知したりして集客に努めます。利用者も新しいサービスには関心を持ちやすいことから、公開直後はアクセスが集中し、膨大なトラフィックが発生するのが一般的です。しかし、トラフィックが急激に増えるとサーバに負荷がかかってサイトへアクセスができない状態が続いたり、Webの反応速度が低下したりすることがあります。ユーザは安定したサービスが提供されることを「当然」と認識しているので、つながるまで悠長に待ってはくれません。つながらないサイトからはすぐに離れ、2度と戻って

    第19回 サーバ運用監視のノウハウ(その3) | gihyo.jp
  • 第13回 来るべきHTML5の世界へ(後編) | gihyo.jp

    HTML5.0(以降HTML5⁠)⁠」のリリースに向けて、2010年9月にW3Cから今後の対応が発表されました。それによると、Xデーは2012年3月。そこで、今回は来るべきHTML5の世界の後編として、HTML5でできること・できないこと、HTML5化することのメリット、PCからスマートフォンまでといったテーマでポイントを解説していきます。 HTML5でできること、できないこと 2010年9月、HTML5の最終草案のアナウンス予定日が2011年5月になることが発表されました。おもな仕様はほぼ固まってきており、周辺の仕様が今後議論されていく模様で、順調に進めば、最終草案以降、勧告候補、勧告案、2012年3月にW3C勧告が予定されています。 このように、約1年半後にはHTML5が正式にリリースされ、業界標準仕様へとなるわけです。この期間を長いと見るか、短いと見るか、少なくともWebシステムや

    第13回 来るべきHTML5の世界へ(後編) | gihyo.jp
  • 第5回 日本におけるブロッキング | gihyo.jp

    ブロッキング、ネット検閲、傍受という文脈で真っ先に思い浮かべるのは中国の金盾でしょうが、最近のインターネットでは、中国以外でもそれらが徐々に増加しています。日も例外ではなく、来年4月から児童ポルノを対象としてISPによるブロッキングが行われる予定であると思われます。来年から開始すると言われているブロッキングですが、「⁠ISPによる自主的な取り組み」というのが大きなポイントの一つです。 児童ポルノを取り締まるということそのものは正しいだと思いますし、通信の秘密とブロッキングに関して今まで非常に時間をかけて検討がなされてきたこともわかります。しかし、技術的な視点で言えば、今まで存在していなかったブロッキングの仕組みがISPに入ることになり、日のインターネットに大きな変化が発生すると言えます。 この記事は、以下のような構成で書いています。 フィルタリングとブロッキングの違い ISPによるブロ

    第5回 日本におけるブロッキング | gihyo.jp
    norinico
    norinico 2010/12/15
  • Unbound、知ってる? この先10年を見据えたDNS 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Unbound、知ってる? この先10年を見据えたDNS 記事一覧 | gihyo.jp
    norinico
    norinico 2010/12/01
    試す
  • 第12回 来るべきHTML5の世界へ(前編) | gihyo.jp

    Webの進化に伴い、複雑化、多様化する時代のニーズに合致する、HTMLの最新バージョン「HTML5.0(以降、HTML5⁠)⁠」のリリースがいよいよ近づいてきました。すでにGoogleAppleをはじめ、各社では対応を進めています。ここでは、2回にわたってHTML5の質に迫りながら、Web関係者が押さえておくべきポイントについて紹介します。 マークアップの今昔HTML5が登場することで、10年にわたって止まっていた歴史が再び動き出します。そこで、HTMLのこれまでの動きを振り返りながら、登場の経緯や意義を見ていくことにしましょう。 HTMLは、ホームページを記述するために開発された最もポピュラーなマークアップ言語です。もともと文書の構造やデザインを記述する言語として登場したメタ言語「SGML(Standard Generalized Markup Language⁠)⁠」の一部を使用し

    第12回 来るべきHTML5の世界へ(前編) | gihyo.jp
    norinico
    norinico 2010/11/30
  • 使える!サーバ運用の実践テクニック 記事一覧 | gihyo.jp

    第14回[キャリアアップ編⑤]varnishを使おう④─実践varnish 高岡将,xcir 2010-12-27

    使える!サーバ運用の実践テクニック 記事一覧 | gihyo.jp
    norinico
    norinico 2010/11/30
    これは全部読むべき