2016.7.11 月
指定したパスワードでログインできない。(大文字小文字数字の区別がついていないっぽい) エンジニアはすべてのGUIを操作できると思っている。 自分以外の別な人がなんでも知っていると思っている。
2016.7.10 日
HTML Coding ドメインの違うリンクはtarget=”_blank”にする。 <br> VS <br /> セキュリティー対策 = XSS Local = 自分のPC metaタグのkeywordとかdiscriptionって意味あるんですか? Server クラウドサーバーなのに専用サーバー並みの仕様策定。 Management 100mを9.60で走れるとして42.195kmを1時間12分で完走できるというスケジュール換算。 謎の質問 「実際にサーバーの冗長化をする際に設定にどれぐらい時間がかかりますか?」という雑な質問をいただきました。現状のネットワークの状況がわからないと何も答えられません。 「”コラム”...
2016.7.8 金
ってのは殆ど嘘くさい噂の1つではありますが、たぶん活字という概念自体が歴史と共に変化しているだけという当たり前のことのように思います。活版印刷で聖書を印刷することが活字という時代から現在では図に近いギリギリの活字、紙に印刷されていない活字(電子書籍やWEBでの文字情報)、講義やセミナーによる耳や視覚からの情報という感じで、特に新聞や書籍といった古典的な活字だけが活字ではないということになってしまったわけです。そういう意味では私はものすごい文字を読んでます。むしろ文字を読み書きするのが仕事なので、一日中文字情報を扱っています。これを活字離れというのかどうかはよくわかりませんが、半角英数字のみのプログラムコードや設定ファイル、設計書と仕様書、パラメーターシート、読むのは殆ど英語のWEBサイトのD...
2016.7.4 月
ニュースサイトみたいにトップページにサムネイルとかを表示してリンク先を記事にする方法です。 たいていのCMSはというかだいたい全部のCMSはテキストと画像を分離せざる得ないわけで、MTもまた記事のテキストと投稿した画像を別々で管理してHTML上で合成という手続きをとっているために画像の表示は面倒臭いのです。以下、ブログ記事のサムネイルを表示して、更にサムネイルのリンク先は画像ではなくその記事のページへという仕様になっています。 肝はMTEntriesでぐるぐるループを回して、その中でMTEntryAssetsを更にぐるぐる回す。MTEntryAssetsはMTEntriesにネストされている状態なのでpermalinkを引っ張ってくると記事のリンクになります。 記事内のすべての画像をサムネイ...
2016.7.4 月
phpの開発では適当にやりがちなんですが、Documentないとつらいです。特に大きくなってしまったプロジェクトについては。そういうときに役にたつのがphpDocumentorです。classファイルのコメントからテキストを抽出して整理してくれます。pearからインストールできるのかpeearライブラリーの一部なのかよくわからないのですが、どっちなんでしょうか。 ## インストル とりあえず現時点では以下の要件を満たしていないとダメ。 – PHP 5.3.3 – intl extension for PHP – Graphviz CakePHP3で使うんだったらほとんど問題ないです。 http://qiita.com/itosho/items/0f809e...
2016.7.3 日
jQueryだと面倒なバリデーションをかなり楽にやってくれます。これは結構いいかな。Form作る時なんかはこれがいいですね。 Emailのバリデーション よく使う項目なのでコントローラすらいらないというすぐれものです。angular.min.jsを呼んであげるだけであとはHTMLを操作するだけでOKです。 コントローラを使わなくていいのは、AngularJSがすでに内部的にコントローラをもっていてそれにセットされるからです。 <div> <form action="" name="userForm" novalidate> <input type="email" name="email" ng-model="email" required ng-maxlengt...
2016.7.2 土
お客さんとかあんまり親しくない友人とか知り合いと話しているとプログラマーはいったい何をやっているのかという話になります。多めに見積もって尊敬が半分、謎と懐疑が半分といった感じがするような話題です。実際にプログラムを書く作業はおもしろいものではありませんし、正直いうと辛い作業ですし、決して天才的な作業ではありません。読み書きソロバン(現代版でいうと、英語・パソコン・マーケティング)ができれば誰でもできることです。しかし誰でもできると言っても「日本人なら誰でも英語ができるようになれる」というようないった感じで、結局できない人には全くできません。逆に何の努力もしなくてもできる人にはできてしまうといった代物です。 プログラマーが最も最初に考えていることはアイディアの選別です。個人的なところでいうと、...
2016.7.2 土
計算のやり方自体定かではない大人なのですが、小学校で習う計算の仕方が難しい。 13-5=x となっているんですが、どうやって自分の頭の中で計算しているのかもうわかりませんが、答えは8だということがすぐにわかる。しかし次男の算数のテストを見ていると、 1.引く方の5を2と3に分解している。(おそらく13も10と3に分解されているのだろう) (10+3)-(2+3)=x となっているようである。 10+3-2-3=x となるから、 (10-2)+(3-3)=x x=8 となるようです。これ難しくないですかね。10を基準に計算しているようです。
2016.7.2 土
/proc/meminfoで確認します。ただのファイルなので、catとかviとかで開いて見ます。 $ cat /proc/meminfo というような感じです。 MemTotal: 2097152 kB MemFree: 1903832 kB Buffers: 0 kB Cached: 0 kB SwapCached: 0 kB Active: 0 kB Inactive: 0 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 2097152 kB LowFree: 1903832 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 260 kB Writeback: 0 kB AnonPages: 0 kB Mapped:...
2016.6.21 火
さくらのVPSの文字コード設定が不親切。他のOSはわからんけどCentOSを選択するとデフォルトで日本語が文字化けします。文字コード設定をUTF-8にしないと駄目です。 $ echo $LANG c これだと文字化けする。 $ echo $LANG ja_JP.UTF-8 こういう風に設定されるようにしないと日本語が文字化けする。 viで以下のファイルを設定します。 # vi /etc/sysconfig/i18n LANG="c" ↓ LANG="ja_JP.UTF-8" 修正して保存したらサーバー再起動します。(再起動忘れがち)
2016.6.20 月
tableのcssはいつもコピペですみません。 table { margin: 10px 5px; border-top:1px solid #c1c1c1; border-left:1px solid #c1c1c1; border-spacing:0; background-color:#ffffff; empty-cells:show; } th { border-right:1px solid #c1c1c1; border-bottom:1px solid #c1c1c1; color:#383125; font-weight: normal; background-color:#efefef; /*background-position:left top;*/ padding:0...
2016.6.19 日
レンタルサーバーはyumとかrpmとかapt-getみたいなものが使えないので、PHPライブラリーのPEARを設定する際には手動で配置することになるのでやや面倒です。ロリポでは2016年現在PHP Version 5.6.21が使えるのでこれで設定。 やるべきことは、 PEARのインストールツール(http://pear.php.net/go-pear)を使って、PEARライブラリを任意のWEBディレクリにインストールする。(必要なライブラリーは同様のツールで追加可能です。) インクルードパスを設定して、includeしたりrequireできるようにする。 の2点だけなので、面倒は面倒ですが、やってしまえばそれでおしまいです。 http://tips.recatnap.info/instal...
2016.6.18 土
変数を使う 前回は初歩の初歩をやったので今回はコントローラでscopeを使ってみます。 $scopeにいろんなものを渡してhtml上で表示することができます。 agappというのはAngularjsのモジュール名みたいなものになります。htmlの方ではタグでng-appで宣言しておきます。jsの方ではangular.moduleとして定義しておきます。 コントローラはhtmlのブロックタグにどのコントローラを使うのかを書いてゆきます。mainControllerで定義した内容がng-controller=”mainController”で定義したdiv要素内で利用することができます。 $scope.testに値を代入しているので{{test}}で出力できるという具合で...
2016.6.17 金
Satisfy AnyをつかってIPで許可されなかった場合だけBasic認証にする Order Deny,Allow Deny from all Allow from 192.168.1 Allow from 192.168.2 AuthUserFile /var/www/.htpasswd AuthGroupFile /dev/null AuthName StaffOnly AuthType Basic require valid-user Satisfy Any IPで許可されなかった人だけBasic認証がかかります。関係者はパスなしそれ以外はアイパスありみたいな感じになるのではないでしょうか。結構便利だけど、ネットワークから離れて外からアクセスするときに必ずログイン情報を忘れているとい...
2016.6.14 火
もうちまたにこのような情報は溢れかえっているので簡単に。 ここではCentOS6にインストール手順を書いています。 nodejsのインストール まずはnodejsのインストール。本家はここ # yum -y install nodejs 2016-06-14時点ではv4.4.5がインストールされています。バージョン管理はnpmで確かできるはず。 一応バージョン確認 # node -v どこにあるかというと、 # whitch node /usr/bin/node ということらしいです。 npmのインストール # yum -y install npm バージョン確認 # npm -v 2.15.5 で完了。
2016.6.14 火
Server構築のノウハウみたいなものがつい数年前まではあったのだけど、2016年現在はもうなくなりました。というのはクラウドという概念が確立してしまったからです。しかしこんな現在でも「あれこれこういう案件なのですが、サーバー構築ではどのようなプランを選んだらいいでしょうか?」的な質問を毎日される。これはもう非常にナンセンスな質問です。 – あらかじめアクセス数がわかっている。 – サーバーにのっけるアプリケーションの仕様がすでに決まっている。 少なくともこの2点が揃っていないとサーバー構築の設計なんてできません。ヘタすればさくらのレンタルサーバー500円で充分足りる場合もあるだろうし、AWSでWebサーバー5台構成+CDN的なキャッシュサーバーが必要な場合もあります...
2016.6.10 金
MEANスタックと呼ばれている次世代のLAMPみたいなものがあって、 MongoDB Express AngularJS Nodejs というものがあります。調べれば情報が山程出てくるので、それはそちらに任せることにして、ここでは別な感じでいろいろ説明します。ノンブロッキングとイベントループ、ワンスレッドというのが今までとちょっと違うところなわけですが、どっちにしろwebという概念の中での話になってくるのでここらを説明してゆきます。あんまり関係ないと思いますが、以下の環境でいろいろやってます。Rethat LinuxとかCentOS6でもあんまりかわらない感じしてます。 Ubuntu 14.01 node v6.2.1 npm 3.9.3 Apache 2.4.18 (Ubuntu) バーチ...
2016.6.9 木
OSの確認(Linuxディストリビューション) CPUスペックの確認 メモリ容量の確認 HDD容量確認 Apacheの設定確認(設定情報、文字コード、モジュール) SSHの確認 MTAの確認 MySQLの確認 Perlのバージョン確認(Perlモジュールの確認(インクルードパスを調べる)) PHPのバージョン確認 ログインシェルの確認 OS確認 Debian GNU/Linux $ cat /etc/debian_version 4.0 Ubuntu あるいは、 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=8.04 DISTRIB_CODENAME=hardy DISTRIB_DESCRIPTION="Ubuntu 8.0...
2016.6.9 木
かなりむかしだけどnetscape navigatorとかもコマンドラインから使えた時代があったんですが、今まだあるんですかね。 Ubuntu14.01環境での話ではありますが、lynxというのがテキストブラウザーとしては手軽でいいです。nodejsとかでいろいろやる際にリモートでコマンドライン上で操作しているとlocalhostでブラウザーが見れないので、こういうのあるととても便利です。 # apt-get -y install lynx 立ち上げるときは、 # lynx [host or URL] で使えます。停止はquitだかexitだかを適当に打てばOKです。
2016.6.9 木
できるだけ最新に近い安定版を入れる。2016年現在でphp5.5とかphp5.6ぐらいです。php7 はまだBeta版(じゃないけど)それに近く資料が少ないので一応やめておく。 また、yum -y install phpを行うとLinuxでは現在php5.3がインストールされますが、これだと若干古いです。なのでリポジトリを調整して比較的新しいものを入れます。 既存の古いPHPをアンインストール # yum remove httpd php mysql-server 必要な場合はこれをやっておきます。 いずれにしろhttpd2.4じゃないとphp5.5は入らないので、ご注意ください。 # yum -y install php55 これでインストールできます。 # php -v PHP 5.5....
2016.6.9 木
古いhttpdをremoveしてから新しいものを再インストールすると Error: httpd24-tools conflicts with httpd-tools-2.2.31-1.7.amzn1.x86_64 というエラーがでることがあります。新しいhttp24-toolsが古いものとコンフリクト起こしているという話なんで、古い方を削除ということになります。 # rpm -qa | grep httpd httpd-tools-2.2.31-1.7.amzn1.x86_64 まだいることが確認できたら、 # yum remove httpd-tools-2.2.31-1.7.amzn1.x86_64 で削除。再度yumで新しいhttpdをインストールすればOKです。 # yum -y i...
2016.6.8 水
要素の尻にセミコロンつけるけど、最後の要素にはセミコロンつけない…みたいな設定(なんだこれ。) li:not(last-child):after { contents: ":"; } floatとかと一緒に使うと、こういう感じ「aaa:bbb:ccc:ddd」みたいになります。
2016.6.8 水
Linux系のマシンではrootとそのほかのユーザーに分かれていてroot以下はそれぞれの権限内での操作しかできないようになっています。それぞれいろいろ設定しておく必要があります。 ユーザーの作成 基本的なコマンドは以下の通りです。usermodとかほとんど使わないです。 command useradd ユーザー作成 usermod 更新 userdel ユーザー削除 passwd パスワード作成・変更 新規ユーザー作成 新規でユーザーを作成すると/home以下に作成したユーザーの専用ディレクトリが自動的に作成されます。 # useradd test /home/testが作成されているはずです。 # ls /home ec2-user test ←作成されている また、passwdファイル...
2016.6.8 水
CentOS6でのApache2の設定ですが、基本httpd.confがあるApacheだったらだいたい同じ設定でいけるかと思います。Debian/Ubuntuだけちょっと違う感じになりますが、考え方は同じです。 AWSの「Amazon Linux AMI」でもだいたい同じような設定でなんとかなります。(ちなみにAWSのLinuxは、ec2-userでログインします。) Apacheのインストール httpdのインストールとかapacheのインストールとかいろいろ言い方がありますが、httpdはサーバー内のサービス名もしくはデーモン名ということになっていて、Apacheはミドルウェアそのものの名前ということになります。 前提としてセキュリティーグループやFWでポートの80はあけておきましょう...
2016.6.7 火
phpとjavascriptの両方でチャックできます。 http://okumocchi.jp/php/re.php Ruby専用とうたっていますがふつうに使えます。リアルタイムでマッチングする文字列がマーキングされるのでとても使いやすい。 http://www.rubular.com/ phpのpreg_matchを試せます。とはいえこれもふつうに使えます。 http://landhere.jp/services/etc/preg_test.php これもかなり使いやすいです。正規表現自体のカッコとかに色がついていてとてもいい。しかもリアルタイム。 http://www.regexr.com/
2016.6.7 火
最近はこういうのがあるのでとても便利 https://htaccess.cman.jp/explain/redirect.html 301リダイレクト ディレクトリ以下をリダイレクトする # Redirect Redirect permanent /hoge/ https://saba.omnioo.com/ ファイル(じゃなくてURLかな)をリダイレクトする # Redirect Redirect permanent /hoge/huga.html https://saba.omnioo.com/hoge.html htmlでリダイレクト なんらかのメッセージを出した後にリダイレクトさせる場合はhtmlでもやれます。秒数をcontent内で指定してあげます。 <html> &l...
2016.6.7 火
Loginのリンクを作る WordPressの更新は、/wp-admin/とか手打ちしたりBookmark探したりするのが辛いので、自分が固定IPの場合は自分だけログイン画面のリンクを貼ったりできます。 <?php // Login link allow if (in_array($_SERVER["REMOTE_ADDR"], $allowIp)) { echo '<li><a href="'.wp_logout_url($redirect).'" target="_blank">Login</a></li>'; } ?> $allowIpはどっかで定義しておいたります。職場や自宅、田舎の実家、強いては愛人の家など複数のIPを登録...
2016.6.3 金
すべてのPCはLinuxになってほしいです。 なんか変なソフトいっぱいインストールするよりコマンドでやったほうがいいです。 ファイルをzipにする $ zip test.zip test.txt ディレクトリをzipにする $ zip -r test.zip ./test パスワード付きのzipにする カレントディレクトリでやらないとフォルダーが階層になってzipされるので、ご注意。深い場合は殊に鬱陶しい。 $ zip -e -r test.zip ./test
2016.5.30 月
エラー出力のレベルは開発時と運用時で随分違ってくるのですが、開発中のデバックモード時にはすべてのエラーをデフォルトのまま使うのがいいです。いろいろなヒントも出してくれるしサンプルコードを出してくれたりもするからです。本番公開時以降の運用では基本404と500があればいいんじゃないかというCakePHP3の意図が見えるのでそれにしたがってやるのが吉です。(細やかなエラーメッセージを運用中にも表示させたいという場合はデバックモードにてそれぞれのエラーテンプレートをカスタマイズしてあげる必要があります。可能は可能だけど、セキュリティー的にもあんまり普通やらないです。) config/app.phpの設定を以下のように変更します。 開発時 'debug' => filter_var(env('...
2016.5.30 月
Unity開発をしようと思っています。ですがフォーラムは英語だUnity Proはやたらと高価だというわけでいろいろ躊躇してます。どこにどれだけリソースを確保すればよいのか全くわからない状態からいろいろ備忘録としてメモしてゆきます。 Unity 日本語ホーム Unity 日本語お問合せ先