2017-01-01から1年間の記事一覧

Let's encryptを使ったAWS EC2(Amazon Linux)へのSSL導入

参考サイト https://certbot.eff.org https://goo.gl/qYUEA4 かんたんまとめ Let's encryptは、無料で利用できるSSL証明書です。 今回はAmazon Linuxで構築した社内サーバのSSL証明書の期限が切れそうだったので、 ためしにインストールして見ました。実際に…

手を動かしてみたらDockerをざっくりと理解できた件。

Dockerについては、 コンテナ型の仮想化技術である アプリケーションの環境をコンテナに閉じ込めてポータブルにできる。 そのため、ホスト OS上の1プロセスで動作するものである VMWare やVirtualBoxのようなホストOSの上でゲストOSを動かすわけではないの…

WordpressでFS_CHMOD_FILEがらみでエラーが出た時の対処法

とあるセ○ム系サーバでcsvで記事とサムネイルをインポートしようとすると下記のようなエラーが。 PHP Notice: Use of undefined constant FS_CHMOD_FILE - assumed 'FS_CHMOD_FILE' in ... とわいえ、FS_CHMOD_FILEはwp-admin/includes/file.php ですでに定…

Scrapyでサイトをクロールし、ElasticSearchでサイトの概要を把握する (3)

前回までで、Scrapyでクロールしたページ情報をElasticSearchにインデックスするところまで設定したが、 実はあれだけだと、うまくESやkibana上で検索できなかったりする。 デフォルトではDynamic Mappingといって データをPOSTすれば勝手にフィールドなどを…

Scrapyでサイトをクロールし、ElasticSearchでサイトの概要を把握する (2)

Vol1の続き。 今回はScrapyでクロールし、その結果をElasticSearchにインデックスするところまで。 Scrapyのプロジェクトを作成 $ scrapy startproject scrapy_tutorial ElasticSearchとの連携設定 $ cat scrapy_tutorial/settings.py ITEM_PIPELINES = { 's…

Scrapyでサイトをクロールし、ElasticSearchでサイトの概要を把握する (1)

サイトリニューアルなどで、既存のサイト状況を把握するためのツールとして サイトをScrapyでクロールし、その統計情報などをElasticSearchにインデックスしてkibanaで解析することを思いついたので、やってみた。CentOS6へセットアップします ElasticSearch…

Scrapy のLinkExtractorとブラウザのリンク仕様

Scrapyでは/ top.html |----- subdir_a/index_a.html |----- subdir_b/index_b.html というディレクトリ構造があり、 top.html に、<a href="../../../../subdir_a/index_a.html"> とあった場合、正しいURLではないので、400エラーとなり、クロールができません。一方で、最近のブラウザは頭がよくて、 ド</a>…

Wordpressの検索結果画面にスクリーンキャプチャを表示してみた

商用のサイト内検索サービスだと、よく検索結果画面にページのキャプチャが載っているかと思います。 それを簡単にWordpressで実現できました(落とし穴あり)結論から言うと、Wordpressの非公式APIであるスクリーンショットを取得するサービスを利用すると…

Googleサイトサーチ(カスタム検索)終了!チーン!

3月いっぱいで、Googleカスタム検索の有料版であるGoogleサイトサーチが新規申し込みを締め切りました。 https://enterprise.google.co.jp/intl/ja/search/products/gss.html ちゃんとサイトを設計していればあまり迷うことなく、すなわち検索機能を使わない…

qTranslateX を使用してWordpressで作成されたサイトをクロールするとクロールできないページが出る件

https://qtranslatexteam.wordpress.com/browser-redirection-based-on-language/によれば、URLに言語情報を含まない場合は、下記の値を元に判断しているようだ。 referrer url (if cookie is not set) cookie (‘qtrans_front_language’) browser setting (i…

ansibleのlineinfile での落とし穴

bindの社内DNSのゾーン設定をansibleで自動化しようとしていたところ、 下記の記述だと、resolver 1のタスク しかincludeステートメントが追加されていなかった。 - name: resolver 1 lineinfile: dest={{namedconf}} insertafter="^###localhost_resolver" …

社内ファイルサーバ検討(その3)〜純正ツールaws clientに落ち着いた〜

goofys でマウントした領域にrsyncをかけてバックップするという仕組みは原因不明で 実現できませんでしたが、 amazonの純正ツールで sync コマンドを発見。 aws コマンドでs3のバケットと同期できるようです。 exclude オプションなどもあり、rsync的な使い…

社内ファイルサーバ検討(その2)

社内ファイルサーバ検討(その1)で いろいろと今のNASからの代替案をあげましたが、 個々の代替案を検討したプロセスについてお話ししたいと思います。 パブリッククラウド まずだれもが思いつくのがパブリッククラウドです。 Google Driveだと、G suite b…

社内ファイルサーバの検討(その1)

会社の代表から、社内共有サーバなんとかなんない? というお題をいただいたので、ちょっと本腰を入れて検討しました。 背景 現在総容量 2TB のNASサーバを社内で利用していますが、 ファイルが溜まりに溜まって、現在97%容量を占拠している状態です。 制作…

Jenkinsを使って社内テスト環境作成を自動化してみました。

ちっちゃなウェブ制作会社には、社内IT部門などはなく、たいてい何でも屋として 新入り社員のパソコンセットアップやアカウント管理 社内/社外サーバの管理 プロジェクト管理ツールの管理 テスト環境の作成 などを行なっています。その中で、「テスト環境の…