ブックマーク / engineer-log.net (32)

  • s3バケットのフォルダ存在チェックでハマった事

    はじめに久しぶりの投稿だなー サボりすぎかwww 今回はAWS SDK for PHPで用意されている関数doesObjectExistを使って、 バケット内にあるフォルダーの存在チェックをやった時にハマった事を書いていきたいと思います。 問題s3コンソール上で確認するとフォルダはあるにも関わらず、 doesObjectExistで存在チェックするとfalseで返ってくるケースがある!!! 原因そもそもs3にはフォルダというものがなくて、所謂フォルダもファイルもオブジェクトとして認識している。 では、どんな場合に上記問題が発生するの? 存在しないフォルダに対して、直接ファイルをPUTする場合に発生してしまいます! 例: プログラムなどでdata/のフォルダがない状態で直接data/abc.txtをPUTした場合 s3内部では以下のような形になります。 data/ #オブジェクトは存在しない

    s3バケットのフォルダ存在チェックでハマった事
  • laravel5でサイトマップを作成する方法(新年のご挨拶を兼ねて)

    新年のご挨拶遅ればせながら、明けましておめでとうございます。 今年もどうぞよろしくお願い致します。 今年の願望は 「溜まっている記事ネタをどんどん消化していきたい!!!」 (きっと、たぶん、恐らく、、、出来ると思う(^_^;) 私事ではございますが、昨年末をまちまして、退職することになりました。 いくつかの魅力的な企業様からお声を掛けていただき、大変嬉しいです。 しかし、自分が作りたいものを見つかったので、今年中にサービスインできるように頑張りたいと思います! 当分の間はフリーランスとして活動する予定なので、何かあったらお声をおかけください。 はじめに今日はlaravel5でサイトマップを作成する方法を紹介したいと思います。 使用するパッケージはこちらになります。 ↓ laravel-sitemap laravel-sitemap パッケージの導入コンソールからcomposerを使って、パ

    laravel5でサイトマップを作成する方法(新年のご挨拶を兼ねて)
  • Windows10 Cortanaの検索ボックスが動作しない場合の対策方法

    はじめに突然Cortanaの検索ボックスが使えなくなりました。 ソフトを起動するのにスタートメニューから探さないといけないので、かなり面倒くさい! 1時間くらいをかけて、ようやく解決できた。。。 今後のためにメモ書きとして残しておこう。 解決方法11.powershellを起動して、以下の順にコマンドを入力して下さい。 $manifest = (Get-AppxPackage Microsoft.WindowsStore).InstallLocation + '\AppxManifest.xml' ; Add-AppxPackage -DisableDevelopmentMode -Register $manifest Get-AppXPackage -AllUsers |Where-Object {$_.InstallLocation -like "*SystemApps*"} 2.パソ

    Windows10 Cortanaの検索ボックスが動作しない場合の対策方法
  • Bitbucketから直接AWS環境にデプロイする方法

    はじめに今回ははBitbucket上で直接AWS環境にアプリケーションをデプロイする方法を紹介したいと思います。 利用するものはAWSのCodeDeployとBitbucketのAWS CodeDeploy for Bitbucketだけです。 AWS側の設定IAMの設定https://console.aws.amazon.com/iam/home#/rolesにアクセスし、「Create New Role」をクリックする「Role Name」はCodeDeployに設定し、「Next Step」をクリックする 「AWS Service Roles」の「AWS CodeDeploy」を「Select」する とりあえず、「AWSCodeDeployRole」を選択して、足りないPolicyは後で追加しよう! Step.5まで行けたら、「Create Role」をクリックする 作ったRoleを

    Bitbucketから直接AWS環境にデプロイする方法
  • Windows 10:ストアが起動しない場合の対策方法

    今日は珍しくWindowsのネタを書きたいと思います。 何故かというとWindows10のストアが起動しない問題は2回も遭遇したから!!! (自宅PC1回、会社PC1回) 解決方法1:ストアのキャッシュ削除【Winキー+s】で検索欄を開く ↓ 検索欄に「wsreset.exe」と入力 ↓ wsreset.exeが表示されたら「Ctrl+Shift+Enter」を押す ↓ 管理者権限を求められるので「実行」をクリック ↓ 下記コマンドプロンプトが立ち上がる。 終了したら、Windowsストアを起動してみましょう! 解決方法2:Local Casheキャッシュ削除ファイルエクスプローラーを起動し、アドレスバーに C:\Users\ユーザ名\AppData\Local\Packages\Microsoft.WindowsStore_8wekyb3d8bbwe\LocalCache を入力しましょ

    Windows 10:ストアが起動しない場合の対策方法
  • シェルでWordPressのバックアップツールを作りましょう

    はじめにこのBlogを運営して約1年になりますが、実はWordpressのバックアップは一度も取ったことがないです。 この適当さがバレバレだね(^ _ ^;) なので、今回はWordpressのバックアップshellを作りたいと思います。 実現したこと・ソースコードのバックアップ ・データベースのバックアップ ・バックアップファイルの世代管理 ・バックアップ失敗時はログファイルに出力する バックアップシェルの作成DBのバックアップmysqldumpを使って、DBのバックアップを実施する。 dump失敗時はログファイルにエラーログを吐く。 #DBのバックアップ eval "mysqldump -u$DB_USER -h$DB_HOST -p$DB_PASSWORD $DB_NAME | gzip > $BACKUP_PATH/DB/DB_$DATE.sql.gz" if [ $? -ne 0

    シェルでWordPressのバックアップツールを作りましょう
  • GOPATH set to GOROOT (C:\Go\) has no effectの対策方法

    はじめてGoをやる人からよく聞かれる質問です。 このWarningをどうすれば解決しますか warning: GOPATH set to GOROOT (C:\Go\) has no effect GOPATHとGOROOTを別々のパスに設定すればいい Windowsの場合コマンドプロンプトを開き、以下のコマンドを入力するだけ set GOPATH=C:\Users\ユーザー\goあとは、go envで変更確認を行って下さい! Linuxの場合これだけのOK! export GOPATH=$HOME/goあとは、go envで変更確認を行って下さい! GOPATHとGOROOTの違いでは、GOPATHとGOROOTの違いはなんですか? GOROOT:GOのインストールディレクトリを指す GOPATH:作業ディレクトリを指す

    GOPATH set to GOROOT (C:\Go\) has no effectの対策方法
  • WordPressテーマ:simplicityについて

    早速記事を書きたいと思います。 今回はsimplicityテーマについて、話してみたいと思います。 http://wp-simplicity.com/ 実はブログもsimplicityを使用しています。 まず、公式サイトに載っている特徴を見てみましょう。 シンプル内部SEO施策済み拡散のための仕掛けが施されている端末に合わせた4つのレスポンシブスタイル手軽に収益化ブログの主役はあくまで文カスタマイズがしやすいまだ使い始めたばかりですが、簡単な感想を書いてみたいと思います。 公式サイトに載っているとおり、テーマ自体はとてもシンプルで、カスタマイズがしやすそうな感じです。 SEO、収益の効果について、まだ分からないですけど、 初心者でも気楽に始められると思います。 それに、テーマ既存のカスタマイズ機能は色々あるので、テンプレートのコードを弄らなくても使えます。 今のところで個人的に一番気に

    WordPressテーマ:simplicityについて
  • 【永久保存版】エンジニアが見るべきブログ 第一弾!

    エンジニアという職を選んだ以上、 開発技術が日進月歩の中で時代に取り残されず、生き抜くためには常に努力するべきだと思います。 特にWEB業界になると技術は日々進化し続けているので、最先端の技術や情報を収集することはエンジニアの日課でもあります。 そこで、今回はエンジニアが見るべきブログを紹介したいと思います。 (私が日々見ているブログの中からいくつか抜粋したものになります) DMMツチノコブログ DMMラボさんのエンジニアブログです。 http://tsuchinoko.dmmlabs.com/ Google Developer Japan Googleからエンジニア向けの情報発信サイト、結構面白い内容の記事もあります。 http://googledevjp.blogspot.jp/ Publickey 業界で話題なものを記事に取り上げることが多く、インフラが多いですね http://ww

    【永久保存版】エンジニアが見るべきブログ 第一弾!
  • 【CoreOS】VirtualBoxにCoreOSをインストールする

    現職は主にLAMP環境で開発しており、LinuxはCentOSを使っています。 案件によって、PHP5.3やPHP5.1を使う場合もあるので、 その場合は都度ローカル開発環境を構築するので、 正直面倒くさいから、Dockerを社内に導入しようと思っています。 よくDockerを使うならCoreOSを使用した方がいいと言うので、 技術検証という意味で、実際に使ってみたいと思います。 ということで、まずはインストールからいきたいと思います!!! 今回はISOイメージを使って、インストールしたいと思います。 CoreOS公式サイト:https://coreos.com/ Virtual Box公式サイト:https://www.virtualbox.org/ ■バージョン: CoreOS:835.12.0 Virtual Box:5.0.14 ステップ1:仮想マシンを作成する タイプ:Linux

    【CoreOS】VirtualBoxにCoreOSをインストールする
  • CentOS6.7:Apache2.2,php5.5からApache2.4,php5.6にバージョンアップの奮闘記 PHP篇

    Apacheのインストールが終わったので、次はPHPにいきたいと思います。 旧設定ファイルのバックアップ cp -r /etc/php.d/ /root/ cp -r /etc/php.ini /root/旧バージョンのアンインストール yum remove php*php5.6のリポジトリ−を追加して、yumからインストールすると必ず以下のエラーになります。 まぁ、Apache2.4にバージョンアップしたから、必ずそうなるだろうね 別の方法を考えよう Error: Package: php56-php-5.6.18-1.el6.remi.x86_64 (remi) Requires: httpd-mmn = 20051115 Installed: httpd-2.4.18-1.x86_64 (installed) httpd-mmn = 20120211 Available: httpd

    CentOS6.7:Apache2.2,php5.5からApache2.4,php5.6にバージョンアップの奮闘記 PHP篇
  • ローカルとリモートサーバーのファイル差分確認用バッチ作成記

    業務である番サーバーと検証サーバーの一部ファイルについて、差分を洗い出す必要があり、 合計60ファイル以上もあるので、一個ずつ見て行くのは流石に怠い! なので、ちょっとしたバッチを書いて洗い出すことにしました。 普通に下記のようにwhile文で書いたら、なぜか一行目のファイルしか読まない! #/bin/bash listfile=$1 remote=$3 cat ${listfile} | while read line do diff $line <(ssh ${remote} cat $line) >> $2 done何故だ!!! 色々調べた結果、SSH接続後にreadを行ったうえでループを抜けることが判明! じゃあ、while文を諦めてforでSSH接続する前に全部読み取ろう #/bin/bash listfile=$1 remote=$3 for line in `cat ${l

    ローカルとリモートサーバーのファイル差分確認用バッチ作成記
  • OpenSSHの秘密鍵から公開鍵を生成する

    秘密鍵から公開鍵を生成する方法 当によく忘れるので、ここで書いとこうw 使うコマンドはssh-keygenです。 ssh-keygen -y -f .ssh/id_rsa Enter passphrase: パスフレーズを入力 ssh-rsa AAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX一応よく使うオプション一覧も載せよう

    OpenSSHの秘密鍵から公開鍵を生成する
  • CentOS6:ClamAV(Clam AntiVirus)のインストール及び設定(1)

    今日のCentOS6.6にClam AntiVirusのインストール及び詳細設定を紹介します。 ステップ1:インストール用のリポジトリー追加CentOS6の64ビット版にEPRLをインストールするためのコマンドは以下になります。 rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/epel.repo yum --enablerepo=epel -y update epel-release ステップ2:Clam AntiVirusをインストールする以下のコマンドで Clam AntiVirus をインストールします。 yum --enablerepo=epel -y instal

    CentOS6:ClamAV(Clam AntiVirus)のインストール及び設定(1)
  • WordPressパフォーマンスチューニング(1)

    この前Google PageSpeed Insightsでブログをチェックしたら、 酷い数値になっていたことに気づきました。 これはアカンと思い、即チューニングすることにしました。 先ずチューニング前のスコアは以下です。 パソコン:65 モバイル:55 (その時、記事を書くつもりがなかったので、スクリーンショットを取りませんでした・・・) ステップ1:JavaScriptCSSのサイズ圧縮方法は沢山ありますが、WordPressを使っているので、ここはプラグインで何とかしましょう 今回使うプラグインはAutoptimizeです。 https://wordpress.org/plugins/autoptimize/ このプラグインはHTMLJavaScriptCSSを圧縮することができます。 しかも、設定も簡単ですね 「Optimize HTML Code」「Optimize Jav

    WordPressパフォーマンスチューニング(1)
  • Google Apps ScriptでGmailの中にある不要のメールを定期削除する方法

    職場のアラートメールは多すぎて、しかも不要なものが多いので、 毎回毎回手削除は流石にアナログすぎるので、Google Apps Scriptを使って自動削除スクリプトを作りましたw ステップ1: 削除したメールをGmailのフィルター機能を使って、ラベルを設定します。 参照ページ: Gmail のラベルとその使用方法 ラベルとフィルタでGmailをスピード仕分け ステップ2: Google Driveを開き、右クリックでGoogle Apps Scriptを新規します。 ※Google Apps Scriptがない場合、「アプリを追加」から探してください! ステップ3: それではコーディングしましょうw 僕はfunction名をnew_gmail_cleanupに設定しました。 (なぜnewなのか?別バージョンのoldがあるからw) 今回使うGoogle Apps Script関数は下記2

    Google Apps ScriptでGmailの中にある不要のメールを定期削除する方法
  • CentOS6:ClamAV(Clam AntiVirus)のインストール及び設定(2)

    前回はClamAVのインストールと基設定まで説明しましたが、今回は下記内容を実現したいと思います。 ・自動定期アップデート ・自動定期スキャン ・スキャナ後の結果をメールで通知する ↑これらのことを全部一つのバッチで実現しましょう それではバッチを作りましょうw vim /root/clamscan.shバッチ↓ #!/bin/bash PATH=/usr/bin:/bin CLAMSCANTMP=/tmp/clamscan.log rm -f $CLAMSCANTMP # clamd更新 yum -y update clamd > /dev/null 2>&1 # 除外リスト excludelist=/root/clamscan.exclude if [ -s $excludelist ]; then for i in `cat $excludelist` do if [ $(echo

    CentOS6:ClamAV(Clam AntiVirus)のインストール及び設定(2)
  • Linuxの基本的な各サービス説明

    実は現職の会社で既存のオンプレシステム環境からAWS環境に全面移行することになり、 そして、そのプロジェクトの主担当は僕になりました。 (今は既存環境の調査でバタバタ中・・・) 既存環境調査に当たり、既存Linuxの各サービスを洗い出す必要がありましたので、 次いでに、今回はLinuxの基的な各サービスについて、簡単にまとめたいと思います。

    Linuxの基本的な各サービス説明
  • 【WEBエンジニアの道】01:WEBエンジニアとは

    皆さん、お久しぶりです。 最近、このブログについて色々考えました。 単純な技術ブログでもいいけど、何か主題を決めたいなぁーと思いました。 考えに考えた末、自分の職でもある「WEBエンジニア」に決めました。 一WEBエンジニアとしての今後のキャリアアップ、学習方法、スキル また、これからWEBエンジニアを目指しているの方に 今まで自分の経験と技術を伝えていきたいと考えております。 ※必ずしも正しいわけではないですよ!!! これからは毎週1回WEBエンジニアについて、話していきたいと思います。 皆さん、何卒よろしくお願いいたします。 別に偉そうに話をする予定はないので、単に今まで自分が経験したこと、 またやった方がいいと思うことを皆さんにも紹介したいと思っているだけです。 そもそもWEBエンジニアとは何? 今回はWEBエンジニアは何なのかを説明していきたいと思います。 まず、物凄く辞書的な説

    【WEBエンジニアの道】01:WEBエンジニアとは
  • 【WEBエンジニアの道】02:WEBエンジニアの学習法

    今回はWEBエンジニアの学習について話してみたいと思います。 先ずはエンジニアとして、この日進月歩のIT業界で生き残るために日々学習し、 努力し続けなければならないことを分かってほしい ↑この大前提に置いて、考えていかないと今後は必ずどっかで躓くはず! なぜ日々学習し続かなければいけないのかは、まだ今度の機会で説明しようと思います。 今回は学習方に絞って話したいと思います。 学習方法学習方法として大きく3つの分類があると思います。 ・最新技術の学習法 ・系統的な学習法 ・コミュニケーションによる学習法 これらの手段を組み合わせて、同時に使うことが一番効率がいいと感じました。 1つ目「最新技術の学習法」について、最新技術を取得するために、 まずは新鮮な情報を手に入れなければいけないです。 どうすればいいかというと「インターネット」上から手に入れることです。 但し、1つ注意してほしいことがあり

    【WEBエンジニアの道】02:WEBエンジニアの学習法