はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    新内閣発足

『脱力系日記』

  • 人気
  • 新着
  • すべて
  • Nginxのalias traversalについて - 冬のソフトウェア海岸

    4 users

    tkmr.hatenablog.com

    Nginxのalias traversalとは Nginxではaliasディレクティブを使って locationディレクティブで指定したURIのパスをファイルシステム上のパスに対応させることができます。 以下の例のようにconfigを書くと、/var/www/app/static/以下にあるファイルに/static/ファイル名のようなパスでアクセスできます。 location /static { alias /var/www/app/static/; } しかし、このようにlocationのパスの末尾が/で終わっていない場合、..を使うことで、開発者が意図していない上位のディレクトリへのアクセスが可能になってしまいます。 このケースだと、/static../setting.pyのようにパスを指定することで、aliasで指定したディレクトリより上位のディレクトリである/var/www/app

    • テクノロジー
    • 2019/03/06 12:58
    • あとで読む
    • rails 5.1.6 のアプリをrails 5.2.0にアップデートしたときに困ったとこメモ - 冬のソフトウェア海岸

      5 users

      tkmr.hatenablog.com

      rails 5.1.6 のアプリをrails 5.2.0にアップデートしたときに、いろいろハマったのでメモ。 rails側 rails側での作業メモ。 cannot load such file -- bootsnap/setup とりあえず rails app:updateしてみる。 route.rbなどは上書きしたらダメだけど、boot.rbとか触った覚えのないファイルは上書きしていく。 $ rails app:update conflict config/boot.rb Overwrite /Users/tkmru/code/old_app/config/boot.rb? (enter "h" for help) [Ynaqdh] Y force config/boot.rb exist config conflict config/routes.rb Overwrite /User

      • テクノロジー
      • 2018/05/10 11:10
      • rails
      • ruby
      • GOT、PLTとIAT - 冬のソフトウェア海岸

        6 users

        tkmr.hatenablog.com

        動的リンクされたライブラリのアドレス解決の際、ELFではGOT、PLTが、PEではIATがそれぞれ用いられる。たまにどっちがどっちでどうだったのか分からなくなるのでメモしておく。 GOTとPLT GOT(Global Offset Table)はシンボルへのポインタの配列で、 プログラムが使用するすべてのライブラリ関数はGOTにエントリを持ち、そこで実際の関数のアドレスを管理する。 これにより、ライブラリをプロセスメモリ空間の中で容易に再配置できるようになる。 遅延リンク ELFではPLT(Procedure Linkage Table)を用いて遅延リンクできるようにしている。 遅延リンクとは、共有ライブラリのロード時にシンボル解決を行うのではなく、関数が実際に呼び出されるときにシンボル解決を行うことである。 関数が最初に呼ばれるとき、飛び先は関数の本体ではなく、PLT上の対応するコードと

        • テクノロジー
        • 2017/03/05 16:04
        • サイバーエージェントの長期インターンに行ってきた - 冬のソフトウェア海岸

          12 users

          tkmr.hatenablog.com

          8/16から9/21までサイバーエージェントの長期インターンに行っていたので感想を書く。 某インターン以外でも最高の夏🍉は過ごせる!! 面接 インフラかサーバサイドやりたいけど、インフラは自信ないとか言ってたら、「OpenStackって知ってる?」って聞かれて「名前しか知らないです」って言ったのでサーバーサイドの方面で選考が進むことになった。 某コンテンツ系サービスのバックエンド見たかったけど、精鋭が揃っているらしく、goを業務で書いたことがないときびしいと言われたので、某メディア系のサービスの中の人とエンジニア面接して無事にメディアサービス (エンジニア対象)に採用されることになった。goのバイナリ読んだりしてたけど、あんまり書いてなかったし、しゃあない。 エンジニア面接のあとすぐ人事の方から電話がかかってきて「Androidもできたよね!?」って聞かれて、Oss Stars~Andr

          • テクノロジー
          • 2016/09/24 14:41
          • JavaScript
          • あとで読む
          • golangのバイナリをちょっとまじめに読んでみる - 冬のソフトウェア海岸

            7 users

            tkmr.hatenablog.com

            golangのバイナリをちょっとまじめに読んだのでメモ。runtimeのコードと合わせて、バイナリがどういう構造になっているのか正面から読んだ。 環境 $ uname -a Linux ubuntu 3.19.0-58-generic #64~14.04.1-Ubuntu SMP Fri Mar 18 19:05:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04.4 LTS Release: 14.04 Codename: trusty $ go version go version go1.6.2 linux/amd64 準備 バイナリを生成 "hello, wo

            • テクノロジー
            • 2016/05/26 11:46
            • Pythonから外部コマンドを実行する - 冬のソフトウェア海岸

              6 users

              tkmr.hatenablog.com

              関数がいくつかあってややこしいのでメモ。 非推奨の方法 osモジュールや、commandsモジュールを使う方法は古いので非推奨となっている。 osモジュールを使う osモジュールのsystem()を使う。この関数は標準 C 関数のsystem() を使って実装されている。戻り値はプロセスの終了ステータスで成功時は0を返す。 import os os.system('ls') commandsモジュールを使う commandsモジュールのgetstatusoutput()とgetoutput()をつかうことができる。 getstatusoutput()は、コマンドを実行したプロセスの終了ステータスと結果のタプル(status, output)を返す。 import commands commands.getstatusoutput('ls') getoutput()は、コマンドを実行した結果

              • テクノロジー
              • 2016/03/13 11:54
              • Python
              • VMの検知について - 冬のソフトウェア海岸

                40 users

                tkmr.hatenablog.com

                マルウェアを解析する際にはVMで解析を行うことが多いので、VMを検知してアンチデバッキングするマルウェアが存在する。それらが用いる手法についてまとめた。 1. TSCを用いる TSC(IA32_TIME_STAMP_COUNTER_MSR: TSC_MSR)とは、CPUクロックごとに加算される64bitのタイムスタンプカウンタであり、これを RDTSC(Read Time Stamp Counter)命令を使って読み出すことで、CPUクロックと同じ分解能を持つ精度のタイマを使うことができる。 CPUクロックに基づく相対時刻の計測 このタイマを用いて、VMとホストマシンで実行した時の時間差を確認することでVMを検知できる。以下のコードはwin上のgccで動作する。 # include <stdio.h> int main(void) { unsigned int time1 = 0; uns

                • テクノロジー
                • 2015/06/29 03:37
                • 仮想化
                • security
                • VM
                • programming
                • あとで読む
                • pixiv 2015 SPRING BOOT CAMP行ってきた!! - 冬のソフトウェア海岸

                  3 users

                  tkmr.hatenablog.com

                  pixiv 2015 SPRING BOOT CAMPとは 3月2日(月)~3月13日(金) に行われたピクシブ社のインターンシップのことです。 お賃金と交通費、宿泊費が支給されるとてもイケイケでナイスなイベントです。 pixiv 2015 SPRING BOOT CAMP エントリー - ピクシブ株式会社 採用サイト 「github垢だけで応募できるとか神か!!!」と思ってダメ元で応募してみると、気がついたら通ってました。 行く前の心境 事前課題がISUCONの予選問題であったり、webサイトに 実際にピクシブ社内で開発メンバーが日々立ち向かっている課題や バグなどの実際の課題を読み解き、本物のソースコードに 修正を加えて解決していっていただきます。と書かれていたので、バグフィックスとかリファクタリングをするのかなあと思っていました。 「PHP出来ないし、サーバーの設定とか詳しくないし気

                  • テクノロジー
                  • 2015/03/16 20:32
                  • jQueryのajax()で返り値を得る方法 - 冬のソフトウェア海岸

                    11 users

                    tkmr.hatenablog.com

                    jQueryのAjax()で返り値がとれない!? こんなふうに書くと返り値はundefinedになってしまう。 function test(){ $.ajax({ type: 'GET', url: 'http://hoge.fuga' dataType: 'text', success: function(response){ return response; }, error: function(response){ return response; }); } var result = test(); // undefined これはajax()がデフォルトでは非同期通信をするためである。非同期通信とは、レスポンスが返って来る前に次の処理に行くことである。だから返り値を返す前に次の処理に行ってしまう。 解決策 1. 同期通信にしちゃう async: falseとすると、同期通信になる

                    • テクノロジー
                    • 2014/10/27 10:29
                    • jQuery
                    • AJAX
                    • Web Speech API で使える音声一覧。 - 冬のソフトウェア海岸

                      3 users

                      tkmr.hatenablog.com

                      Web Speech APIとは ブラウザにしゃべらせたり、音声認識させたりできるAPI。Chromeではバージョン33から対応している。 先日、公開したfavurlをしゃべらせるのに使用している。 これを使ってしゃべらせるのに利用可能な音声一覧が載ってるサイトが見つからないので、載せておこうと思う。 しゃべらせ方 var msg = new SpeechSynthesisUtterance('こんにちは!'); msg.lang = 'ja-JP'; window.speechSynthesis.speak(msg); 使う音声を指定したい場合は以下のコードを付け足す。 var voices = speechSynthesis.getVoices(); msg.voice = voices[3]; 使える音声一覧 左の数字はspeechSynthesis.getVoices()で返される

                      • テクノロジー
                      • 2014/06/22 14:43
                      • HTML

                      このページはまだ
                      ブックマークされていません

                      このページを最初にブックマークしてみませんか?

                      『脱力系日記』の新着エントリーを見る

                      キーボードショートカット一覧

                      j次のブックマーク

                      k前のブックマーク

                      lあとで読む

                      eコメント一覧を開く

                      oページを開く

                      はてなブックマーク

                      • 総合
                      • 一般
                      • 世の中
                      • 政治と経済
                      • 暮らし
                      • 学び
                      • テクノロジー
                      • エンタメ
                      • アニメとゲーム
                      • おもしろ
                      • アプリ・拡張機能
                      • 開発ブログ
                      • ヘルプ
                      • お問い合わせ
                      • ガイドライン
                      • 利用規約
                      • プライバシーポリシー
                      • 利用者情報の外部送信について
                      • ガイドライン
                      • 利用規約
                      • プライバシーポリシー
                      • 利用者情報の外部送信について

                      公式Twitter

                      • 公式アカウント
                      • ホットエントリー

                      はてなのサービス

                      • はてなブログ
                      • はてなブログPro
                      • 人力検索はてな
                      • はてなブログ タグ
                      • はてなニュース
                      • ソレドコ
                      • App Storeからダウンロード
                      • Google Playで手に入れよう
                      Copyright © 2005-2025 Hatena. All Rights Reserved.
                      設定を変更しましたx