ローカルに保存しないハードコピーツールGyazo

とっても便利なツールです。

ハードコピーはサーバへ格納されます。

要領は無制限です。

ブログにアップする画像はインターネットへ公開するものであるので

別に流出してよいものです。

セキュリティに不安な方は、社内のマニュアル用の画像などはアップしないほうがよいとは思いますが。

けど、自宅サーバを公開している私にはうれしいツールです。

ぜひ、使ってみて判断してください。

 

1.インストール方法

https://gyazo.com/download?lang=ja

ここにダウンロード元とインストール方法がかかれてますので、これにそって行ってください。

かんたんですよ。

2.使い方

%e6%96%b0%e3%81%97%e3%81%84%e3%83%93%e3%83%83%e3%83%88%e3%83%9e%e3%83%83%e3%83%97-%e3%82%a4%e3%83%a1%e3%83%bc%e3%82%b8

常駐しているGyazoをクリックすると + が表示されるのでハードコピー範囲を選択します。

自動的に下記URLが表示されます。

https://gyazo.com/ffc66328ea1228cea50b4a4d3c56c689

シェアボタンでHTMLクリックでタグをコピーできます。

wordPress(テキストモード)やブログにはHTMLのaタグで追加されます。

https://gyazo.com/5dc1978b7e7a3ac7003d901612663192

画像を削除しない限り、全ての画像は半永久的にGyazoのサーバー上に保存されるそうです。

「無料版では画像リストからのアクセスに制限があります。」とかかれてますがこれは

1ケ月以上前は一覧確認できないようです。

過去画像をコメントつけたりの編集ができなくなります。
https://gyazo.com/6c484c9505661768985a124c6b32ba22

是非、つかってみてください。便利ですよ。

PHPのArray(配列)メソッド・使い方まとめ

参考になりますのでリンクしておきます

侍エンジニア塾さんへのリンクです。

※実は私が書いた記事が採用されちゃいました。(^◇^)


http://www.sejuku.net/blog/11981


すっごい参考になります。

内容は下記のなります

プログラミング言語って何から勉強すればいいの?

仕事がらよく「プログラミング勉強したいけど、どの言語がいいっちゃね?」と質問が来ます。

ピュアなオブジェクト指向を勉強して頂きたい場合は、オブジェクト指向のさきがけのsmalltalk と言っておりますが

実務は皆無であり、これはあくまで教育用言語です。

「やっぱりJavaかな。」と答えますが、Javaは企業の基幹業務や大規模なシステム向きです。

フリーランスでの受託となると、WEBサイト制作や、SNSやECサイト開発などの

Web開発での言語は、敷居の低く、比較的簡単に開発できるPHPかRubyがほとんどであることが実態です。

しかし言語の基礎力を付ける意味で手始めはJava言語のオブジェクト指向とJava8のmap,Reduce、ラムダ式までしっかりと覚えてから → PHPという流れがベストだよと言うようにしております。

ググってると私の意見を代弁してくれている記事を見つけましたので紹介いたします。

理由を明確に教えてくれてます。作者の井上 慎也さんは尊敬に値します。

是非、一読されることをお勧めいたします。

侍エンジニア Online さんの記事です

wordpress 停止手順(CentOSの場合)

前回、Linux(CentOS)を一気にシャットダウンしたので

wp_optionsが破損したのではと推測される。

 

かならず

httpdを停止後に受け付けられなくする

Mysqlを停止してください。

[root@localhost Backup]# service httpd stop
httpd を停止中:                                            [  OK  ]
[root@localhost Backup]# service mysqld stop
mysqld を停止中:                                           [  OK  ]
[root@localhost Backup]#

壊れる心配が少なりましたが、

自動で動かしたところです。

wordPressの更新を押したら動かなくなった( ゚Д゚)

管理画面の「ダッシュボード」-「更新」が赤くなったので

バージョン 4.6.1–ja  を再インストールしたところ

プラグイン 追加ができなくなりました。

 

画面上部に

”warning: 予期しないエラーが発生しました。WordPress.org かこのサーバーの設定に何か問題があるかもしれません。問題が続くようであれば、サポートフォーラムを参照してみてください。 (WordPress は WordPress.org との安全な接続を確立できませんでした。サーバー管理者にご連絡ください) in /var/www/wordpress/wp-admin/includes/plugin-install.php on line 158”

が出力されてプラグインなど一部機能が使えなくなりました。

 

ここでも (;´・ω・)草 (;´・ω・)草 大量の汗が。。。

 

原因は

強制的にhttps(SSL)接続に変換しているコードにより発生してた

 

PHPソースが置き換わったために https 対応が標準のようです。

 

udpate.phpのコード変更方法

以下にSSL接続に強制的に変換しているコードを実行している「update.php」ファイルの変更方法を記載します。

  1. WordPressをインストールしたフォルダ配下のwp-includesフォルダにある「update.php」ファイルをテキストエディタで開く。 私はViで変更しました。
  2. 以下の3行を見つけてコメントアウト(行頭に//を付加)する。
    ※同様の行が3箇所あるのですべて同様に変更する。
    [変更前]

    104 if ( $ssl = wp_http_supports( array( 'ssl' ) ) )
    105     $url = set_url_scheme( $url, 'https' );

    [変更後]

    104 //  if ( $ssl = wp_http_supports( array( 'ssl' ) ) )
    105 //      $url = set_url_scheme( $url, 'https' );

以上でコードの変更作業は終了です。

 

無事エラーはなくなりました。

 

しかし以前は何で動いてたのだろうか?????

 

 

 

WordPressで「データベース接続確立エラー」がでた場合の対処法

自宅のwordPressが遅いので

思い切ってサーバの移行を行ってみました。

Linux(CentOS)をシャットダウンし再起動してみると、wordPressが

「なっなっ何と」

「データベース接続確立エラー」となってしまうではないか。

慌てました。慌てました。

ググりまくりです。( ゚Д゚)

wordPressのログより wp_options テーブルが壊れていることが分かりました。


復旧手順を下記に説明します。


①Mysql へログインします。

 ==>    “sudo mysql -u root -p”

そのあとパスワード入れます。

②データベースの切り替え

==>   “use wp”

wordPressデータベースを指定します。

③破損テーブルをチェックします

==> “check table wp_options;”

MsgTypeがError の場合は、お悔み申し上げます。

しかし安心してください。復旧コマンドがあるのです。

④テーブル復旧

==> “repair table wp_options;”

status=OK  がでれば復旧できました。

③のcheck tableで再確認しましょう。

⑤復旧OKならばDBを抜けます

==> “exit”

以上です。わたしのように焦らないでくださいね。

[root@localhost log]# sudo mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use wp
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> check table wp_options;
+---------------+-------+----------+----------------------------------------------------------+
| Table         | Op    | Msg_type | Msg_text                                                 |
+---------------+-------+----------+----------------------------------------------------------+
| wp.wp_options | check | warning  | Table is marked as crashed                               |
| wp.wp_options | check | warning  | 7 clients are using or haven't closed the table properly |
| wp.wp_options | check | error    | Record at pos: 272888 is not remove-marked               |
| wp.wp_options | check | error    | record delete-link-chain corrupted                       |
| wp.wp_options | check | error    | Corrupt                                                  |
+---------------+-------+----------+----------------------------------------------------------+
5 rows in set (0.13 sec)

mysql> repair table wp_options;
+---------------+--------+----------+--------------------------------------------------------+
| Table         | Op     | Msg_type | Msg_text                                               |
+---------------+--------+----------+--------------------------------------------------------+
| wp.wp_options | repair | info     | Wrong block with wrong total length starting at 110808 |
| wp.wp_options | repair | warning  | Number of rows changed from 263 to 256                 |
| wp.wp_options | repair | status   | OK                                                     |
+---------------+--------+----------+--------------------------------------------------------+
3 rows in set (0.36 sec)

mysql> check table wp_options;
+---------------+-------+----------+----------+
| Table         | Op    | Msg_type | Msg_text |
+---------------+-------+----------+----------+
| wp.wp_options | check | status   | OK       |
+---------------+-------+----------+----------+
1 row in set (0.00 sec)

mysql> exit
Bye
[root@localhost log]# 

Dice(DDNE)インストール

DynamicDNSサービスとは

 インターネット上のDNSサーバーに、ドメイン名を登録してくれるサービスのことをDynamicDNSサービスといいます。このサービスはドメイン名に対するIPアドレスをいつでも自由に変更することが出来ます。現在では、DtDNSDynDNSHAMMERNODEMyDNSなどの無料で登録してくれるサイトが数多くありますので、是非利用してみましょう。ちなみに私は、独自ドメインが登録できて無料の「MyDNS.jp」 を使用を使っております。

Dynamic DNSサービスを省略してDDNSとも呼びます。

詳しくはhttp://www.iodata.jp/products/plant/2002/npbbrsx/dyndds1.htmを見てください。

MyDNS登録方法

http://www.mydns.jp/

https://gyazo.com/28f863f06dc3f8a2e7066490d914540d

上記URLで新規にIDとパスワードを取得してください。
https://gyazo.com/1192c1ef7a07acbcccd59ecfe4bacdf1

詳細手順は下記手順を参照してください
https://gyazo.com/c7c34714436fb10aa2967b570204560a

DiCEとは

私はyahoo!BBへ加入しておりますが、固定IPアドレスでは料金が高くなるため可変IPアドレスで契約しております。IP`アドレスは変更されてしまいますので、自宅のWebサーバやメールサーバなどを公開するためには、一定期間でのIPアドレスとドメイン名の結び付けを行ってくれるソフトを探していました。そのソフトがDiCEなのです。ここではDiCEをインストールしてMyDNS.jpを登録します。

DiCEのダウンロードとインストール

このダウンロードサイトよりダウンロードしてください。

http://www.hi-ho.ne.jp/yoshihiro_e/dice/

インストールは指示に従って行えば簡単です。

https://gyazo.com/016d9712585d21c739f00ebca58edeae
https://gyazo.com/d5c676d279edb110cf301570958e9dde
MyDNSで設定した ホスト名/ドメイン名/ユーザ名/パスワード を設定する。

スケジュールは、状況に合わせて変更してください。

常にwindowsで常駐させておけば、グルーバルアドレスが変わっているか

自動監視し再設定してくれます。

mysqlログの見方

ログ出力先変更

vi /etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
general_log=0
general_log_file=/var/log/mysql/query.log

[mysqld_safe]
log-error=/var/log/mysql/mysqld.log   #<==ここを変更
pid-file=/var/run/mysqld/mysqld.pid

 

mysql再起動

[root@localhost log]# sudo service mysqld restart
mysqld を停止中: [ OK ]
mysqld を起動中: [ OK ]

 

ログ確認

[root@localhost log]# tail /var/log/mysql/mysqld.log
161114 09:35:27 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
161114 9:35:27 InnoDB: Initializing buffer pool, size = 8.0M
161114 9:35:27 InnoDB: Completed initialization of buffer pool
161114 9:35:27 InnoDB: Started; log sequence number 0 44233
161114 9:35:27 [Note] Event Scheduler: Loaded 0 events
161114 9:35:27 [Note] /usr/libexec/mysqld: ready for connections.
Version: '5.1.73' socket: '/var/lib/mysql/mysql.sock' port: 3306 Source distribution
[root@localhost log]#

※socketエラーは調査中

 

クエリーログ

クエリーのログを出力したい場合は、下記のように設定する。

$ sudo vi /etc/my.cnf
・・・
[mysqld]
・・・
general_log=1
general_log_file=/var/log/mysql/query.log

クエリーのログが出力される。

[root@localhost log]# tail /var/log/mysql/mysqld.log
161114 09:35:27 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
161114 9:35:27 InnoDB: Initializing buffer pool, size = 8.0M
161114 9:35:27 InnoDB: Completed initialization of buffer pool
161114 9:35:27 InnoDB: Started; log sequence number 0 44233
161114 9:35:27 [Note] Event Scheduler: Loaded 0 events
161114 9:35:27 [Note] /usr/libexec/mysqld: ready for connections.
Version: '5.1.73' socket: '/var/lib/mysql/mysql.sock' port: 3306 Source distribution
[root@localhost log]# tail /var/log/mysql/query.log
4 Query SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (241) ORDER BY meta_id ASC
4 Query SELECT * FROM wp_posts WHERE ID = 241 LIMIT 1
4 Query SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (241) ORDER BY meta_id ASC
4 Query SELECT * FROM wp_posts WHERE ID = 244 LIMIT 1
4 Query SELECT * FROM wp_posts WHERE ID = 244 LIMIT 1
4 Query SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (244) ORDER BY meta_id ASC
4 Query SELECT option_value FROM wp_options WHERE option_name = 'jpsq_sync_checkout'
4 Query UPDATE wp_options SET option_value = '0:0' WHERE option_name = 'jpsq_sync_checkout'
4 Query UPDATE `wp_options` SET `option_value` = '1479083179', `autoload` = 'yes' WHERE `option_name` = 'jetpack_next_sync_time_sync'
4 Quit
[root@localhost log]#

 

Linux ネットワーク確認・DHCP再読込

ifconfig コマンドの使い方をメモします

使用例1:IPアドレスの設定

ifconfig eth1 192.168.1.10 netmask 255.255.255.0 broadcast 192.168.1.255
                         IPアドレス     サブネットマスク       ブロードキャストアドレス

 

使用例2:インターフェイスの起動/停止(DHCP再読み込み)

(起動)
ifconfig eth0 up

(停止)
ifconfig eth0 down

 

使用例3:ネットワーク環境を確認する

ifconfigコマンドを入力する。
https://gyazo.com/b63a8d81ad63cd715c78ea20eb141f34
①MACアドレス

②IPアドレス

③サブネットマスク

が表示できます。

eth0  は動作しているLAN識別を示します。

 

ちなみに私はルータでのDHCP割り当てで

MACアドレスを登録しています。

 

使用例3:CentOSでのネットワーク設定方法
https://gyazo.com/d1a1393caf0eeeb6b199146687f2cc1f
https://gyazo.com/46355d591575ea5fbe09e9464e3c9408
この場合はDHCPの設定だが、静的アドレスも設定できます。

変更後は「使用例2:インターフェイスの起動/停止(DHCP再読み込み)」を行ってください。

 

以上です。

要件をIF構文(ロジック)へ落とすためへのアドバイス 例)うるう年

プログラミング教育を行っていると

IF ~ else if  ~ else の ネスト階層地獄に落ちる方が

たくさんいます。

原因は、

①要件を紙に書くなどの設計作業を飛ばしているからと

②ネスト(階層)の深いIFに慣れていないにも関わらず、いきなり AND および OR を

使ってしまい論理が分からなくなってしまう

というループへはまってしまいます。

「うるう年」を例としましたが、ベース条件とそのベース条件に対しての例外という区分けで

要件を整理すれば、ぶれません。

この手順で慣れていきましょう。

https://gyazo.com/e2765013d4d3e5c7de0cbf0125c674ad