2015年2月10日火曜日

PHP の研究を再開することにした

2015.02.10(火) 

■ PHP の研究を再開することにした。
2015.02.05(木)
PHP:The Right Wayの説明:http://www.s-arcana.co.jp/tech/
■ 過去にPHP の研究を試みたことがある。
2014.08.04(月)
/Volumes/LaCie/デスクトップ2/諸資料記録/処理中/緊急処理中/研究中2014.08.03〜/PHP56インストール
■ Homeblew で行ったPHP56インストールは旨くいかなかったので削除した。
■ MacPorts での PHP56インストールを行うことにした。
2015.02.06(金)
■ MacPorts のインストール
■ /Users/kojimac.../.bash_profile
・・・・・・・・・・
##
# Your previous /Users/kojimac.../.bash_profile file was backed up as /Users/kojimatac.../.bash_profile.macports-saved_2015-02-06_at_10:12:19
##
# MacPorts Installer addition on 2015-02-06_at_10:12:19: adding an appropriate PATH variable for use with MacPorts.
export PATH="/opt/local/bin:/opt/local/sbin:$PATH"
# Finished adapting your PATH environment variable for use with MacPorts.
##
# Your previous /Users/kojimac.../.bash_profile file was backed up as /Users/kojimatac.../.bash_profile.macports-saved_2015-02-06_at_10:42:18
##
# MacPorts Installer addition on 2015-02-06_at_10:42:18: adding an appropriate PATH variable for use with MacPorts.
export PATH="/opt/local/bin:/opt/local/sbin:$PATH"
# Finished adapting your PATH environment variable for use with MacPorts.
■ $sudo port selfupdate
Password:
---> Updating MacPorts base sources using rsync
MacPorts base version 2.3.3 installed,
MacPorts base version 2.3.3 downloaded.
---> Updating the ports tree
---> MacPorts base is already the latest version
The ports tree has been updated. To upgrade your installed ports, you should run
port upgrade outdated
10:48 AM kojiMacBook-Air:~
■ $port
MacPorts 2.3.3
Entering interactive mode... ("help" for help, "quit" to quit)
[Users/kojimatakumi] > 
■ $bash
11:33 AM kojiMacBook-Air:~
■ $sudo port install php56
Password:
To customize php56, copy /opt/local/etc/php56/php.ini-development (if this is a
development server) or /opt/local/etc/php56/php.ini-production (if this is a
production server) to /opt/local/etc/php56/php.ini and then make changes.
---> Cleaning php56
---> Updating database of binaries
---> Scanning binaries for linking errors 
---> No broken files found.
11:34 AM kojiMacBook-Air:~
■ $sudo port select php php56
Selecting 'php56' for 'php' succeeded. 'php56' is now active.
11:35 AM kojiMacBook-Air:~
■ $php -v
PHP 5.6.5 (cli) (built: Jan 24 2015 18:02:57) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
11:35 AM kojiMacBook-Air:~
■ ApacheからPHP5.6を使うように書き換え
/private/etc/apache2/httpd.conf
169LoadModule php5_module libexec/apache2/libphp5.so
■ php.ini ファイルを設定する
■ php.ini を作成する。
To customize php56, copy /opt/local/etc/php56/php.ini-development (if this is a
development server) or /opt/local/etc/php56/php.ini-production (if this is a
production server) to /opt/local/etc/php56/php.ini and then make changes.
■ php.ini-development の複製から php.ini を作成した。
この php.ini を /private/etc/php.ini として移行保存。元の php.ini は /private/etc/php.ini-5.5.1.4~org として保存。
/opt/local/etc/php56/php.ini は php-org.ini と名前を変更し保存。
■ MacPorts を導入したので、Homebrew の具合を確かめる。
■ $brew doctor
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.
Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
/opt/local/bin/ncurses5-config
/opt/local/bin/ncursesw5-config
/opt/local/bin/pcre-config
/opt/local/bin/php-config
/opt/local/bin/xml2-config
Warning: You have MacPorts or Fink installed:
/opt/local/bin/port
This can cause trouble. You don't have to uninstall them, but you may want to
temporarily move them out of the way, e.g.
◥◣ sudo mv /opt/local ~/macports
■ Homebrew を利用するには MacPorts の退避が必要
◼ 差し当たりどちらも使う予定がないので唯保守のためにこのままにしておく。
■ PHP56 導入後に発生したトラブル
◼ 予期せぬエラーが発生しました。
SQLSTATE[HY000] [2002] No such file or directory
◼ ログイン出来ない。
localhost/phpmyadmin/
■ トラブルの原因究明
◼ PHP56 をインストールしたため php.ini がデフォルトに戻っていると考えられるので、ソケットの設定がなされているか調べる。
◼ 参考になるのは過去に php.ini がデフォルトしたときの処理経過記録である。
◼ 2014.11.08(土)php.ini がデフォルトしたときの処理経過記録。
◼php.ini 設定
986pdo_mysql.default_socket=/tmp/mysql.sock
1135 mysql.default_socket = /tmp/mysql.sock
1194 mysqli.default_socket = /tmp/mysql.sock
■ トラブルの修復
◼ php.ini ー etc 設定がデフォルトしたため改めて次を設定した。
980pdo_mysql.default_socket=/tmp/mysql.sock
1129mysql.default_socket = /tmp/mysql.sock
1188mysqli.default_socket = /tmp/mysql.sock
■ トラブルの修復結果
◼ ログインocalhost/phpmyadmin/

2015年2月1日日曜日

自宅サーバを Macintosh HD から LaCie に移転した

2015.01.29(木) 

自宅サーバを Macintosh HD から LaCie に移転した。

サーバの位置::Time Machineを使って変更する。 

1. /Volumes/LaCie/ のなかに Library/WebServer/ を作成する。
2. Time Machine から /Volumes/Time Machine/Backups.backupdb/kojiMacBook-Air/2015-01-29-104206/Macintosh HD/Library/WebServer/Documents を /Volumes/LaCie/Library/WebServer/ にドラッグアンドドロップする。

apache2 ::設定を変更する。 

変更前サーバ::/Library/WebServer/Documents

/private/etc/apache2/httpd.conf
232    # DocumentRoot: The directory out of which you will serve your 
233    # documents. By default, all requests are taken from this directory, but 
234    # symbolic links and aliases may be used to point to other locations. 
235    # 
236    DocumentRoot "/Library/WebServer/Documents"
237    <Directory "/Library/WebServer/Documents">

変更後サーバ::/Volumes/LaCie/Library/WebServer/Documents 

/private/etc/apache2/httpd.conf
232    # DocumentRoot: The directory out of which you will serve your 
233    # documents. By default, all requests are taken from this directory, but 
234    # symbolic links and aliases may be used to point to other locations. 
235    # 
236    DocumentRoot "/Volumes/LaCie/Library/WebServer/Documents"
237    <Directory "/Volumes/LaCie/Library/WebServer/Documents">
238    #
239    # Possible values for the Options directive are "None", "All",
240    # or any combination of:
241    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
242    #
243    # Note that "MultiViews" must be named *explicitly* --- "Options All"
244    # doesn't give it to you.
245    #
246    # The Options directive is both complicated and important.  Please see
247    # http://httpd.apache.org/docs/2.4/mod/core.html#options
248    # for more information.
249    #
250    Options FollowSymLinks Multiviews
251    MultiviewsMatch Any
252
253    #
254    # AllowOverride controls what directives may be placed in .htaccess files.
255    # It can be "All", "None", or any combination of the keywords:
256    #   AllowOverride FileInfo AuthConfig Limit
257    #
258    AllowOverride None
259
260    #
261    # Controls who can get stuff from this server.
262    #
263    Require all granted
264 </Directory>

処理内容::/Documents - 236, 237 に /Volumes/LaCie を書き足す。 

変更後サーバの起動確認::http://www.kojimat.ddo.jp/

/Volumes/LaCie/Library/WebServer/Documents/index.html を閲覧し確認した。 

変更前サーバの処理::/Library/WebServer/Documents 

/Documents/ から index.html.en 以外の全てのファイルとフォルダを削除した。

2015.01.29(木)

Mac OS X 10.10.2 にアップデートした.

/private/etc/apache2/httpd.conf 内容は保存されていた。

/private/etc/php.ini          内容に変更なく保存されていた。
/Library/WebServer/Documents  サーバ機能に変更なく保存されていた。

2015.01.28(水) 

concrete5.7.2 を concrete5.7.3.1 にアップグレードした。

1.ダウンロードしてきた concrete5.7.3.1 フォルダをサイトフォルダの中の updates フォルダの中に入れる。 
2.管理画面の「システムと設定」ー「バックアップとりストアー」-「concrete5をアップグレード」 
これでアップグレードが完了。 
3.サイトのフォルダ名を5.2から5.3に変更する。 
4.管理画面の「システムと設定」ー「最適化」- 「キャシュをクリアー」 
これでサイト名変更が完了。 

2015.01.24

MacBook Air の自宅サーバに生じた不具合を改善した経過の記録 

事前の状況::Mail.app に不調

Mail.app に不調が生じていた。ウエブ上のサイト登録で確認メールがMail.app の未読メールボックスに現れなかったのである。未読メールボックスはスマートメールボックスを使って作成し、編集で特定のメールボックス「受信」にある未開封のメッセージを全て集めるとしてある。 
登録の確認メールは未読メールボックスではなく他のメールボックスに入っていたのである。 
アップルコールセンターに電話してサジェストを貰い、Yosemite の再インストールをすることにした。 
Yosemite の再インストールによっても Mail.app の改善は全く見られず、自宅サーバに不具合が生じているのが見つかった。 

事前の状況::自宅サーバに不具合

再びアップルコールセンターに電話してサジェストを貰い、タイムマシンの復元機能を使って /Library/WebServer の WebServer を過去のものと取り換えることにした。 
/Volumes/Time Machine/Backups.backupdb/kojiMacBook-Air/2015-01-23-000531/Macintosh HD/Library/WebServer 

不具合の状況::ウエブサイトが表示されない

しかし、次のように自宅サーバの不具合は全く改善されなかった。 
http://www.kojimat.ddo.jp/      表示される。 
Forbidden 
You don't have permission to access /concrete5.7.2/ on this server. 
http://www.kojimat.ddo.jp/concrete5.7.0.4/      表示されない。 
Forbidden 
You don't have permission to access /concrete5.7.0.4/ on this server. 
http://kojimat.ddo.jp/modxevo/manager/      表示されない。 
Forbidden 
You don't have permission to access /modxevo/ on this server. 

復活経過::

http://www.kojimat.ddo.jp/concrete5.7.0.4/      表示が復活した。... 
以下の httpd.conf の修正により表示された。 
httpd.conf 

比較::比較のうえ以下のように対処した

/Volumes/Time Machine/Backups.backupdb/kojiMacBook-Air/2015-01-23-000531/Macintosh HD/private/etc/apache2/httpd.conf 
166LoadModule userdir_module libexec/apache2/mod_userdir.so 
169LoadModule php5_module libexec/apache2/libphp5.so 
493Include /private/etc/apache2/extra/httpd-userdir.conf 
/private/etc/apache2/httpd.conf 
166#LoadModule userdir_module libexec/apache2/mod_userdir.so 

対処::# を削除する

169#LoadModule php5_module libexec/apache2/libphp5.so 

対処::# を削除する

493#Include /private/etc/apache2/extra/httpd-userdir.conf 

対処::# を削除する

復活経過::

http://localhost/concrete5.7.3/表示が復活した。 
http://kojimat.ddo.jp/modxevo/      表示が復活した。 
以下の php.ini の追加により表示された。 

php.ini 存在確認::存在していなかったので次のように対処した

/private/etc/php.ini が存在していない。 
Yosemite の再インストールにより、/private/etc/php.ini.default 
デフォルトに戻ったため削除されていた。 

対策::

/Volumes/Time Machine/Backups.backupdb/kojiMacBook-Air/2015-01-23-000531/Macintosh HD/private/etc/php.ini 
タイムマシンの中に存在している php.ini をドラッグドロップでコピーした。 
/private/etc/php.ini 設定された。 

残る問題点::

なぜ、  http://www.kojimat.ddo.jp/ だけは表示されるのであろうか。 

2015.01.19

ターミナルのプロンプトを変更した

状況::

先日変更して使っていたターミナルのプロンプトは次の通り。 
export PS1='\h:\W $' 

変更::

今日思うところあって次のように変更した。 
export PS1='\[\e[34m\]\@ \[\e[33m\]\h:\[\e[32m\]\w\e[0m\n\$' 

結果::

時刻表示と色分け表示で画面が明瞭になった。 
暫く使ってみることにした。 

2015.01.17

MySQL の自動起動を復活させることにした

状況::

暫く MySQL の起動を手動で行ってきたがターミナルの操作が煩わしくなってきていた。 
そこで再びMySQL の起動を自動起動にすることにした。 

確認::

~/Library/LaunchAgents/ に置いてある homebrew.mxcl.mysql.plist を PropEdit で探して Jedit X で開き ProgramArguments の中の3項目の内容を確認してみた。 
<key>ProgramArguments</key> 
<array> 
<string>/usr/local/opt/mysql/bin/mysqld_safe</string> 
<string>--bind-address=127.0.0.1</string> 
<string>--datadir=/usr/local/var/mysql</string> 
</array> 

対応::

/usr/local/opt/mysql/bin/mysqld_safe には mysql が存在していないので削除し、mysqld_safe が存在しているパス(/usr/local/Cellar/mysql/5.6.21/bin/mysqld_safe)に Sublime Text を使って変更した。 
<key>ProgramArguments</key> 
<array> 
<string>/usr/local/Cellar/mysql/5.6.21/bin/mysqld_safe</string> 
<string>--bind-address=127.0.0.1</string> 
<string>--datadir=/usr/local/var/mysql</string> 
</array> 

結果::

MySQL の自動起動が復活した。

2015.01.07

ターミナルでコマンドがほとんど受け付けられなくなったときの解決策の一つ

昨日の夕方からターミナルでコマンドが全く受け付けられなくなった。 
pw などほんの少しのコマンドを除き、ls ほかたくさんのコマンドで -bash: command not found と表示される状態となった。
そこで /.bash_profil を疑ってみたが time machine の記録と違っていなかった。
試行錯誤の結果、やっと /Users/kojimatak…/.bash_profile に辿り着き、そこに記述の相違を発見した。
最後の export PATH の記述の最後に :$PATH が欠落していたのである。
その原因に思い当たるものは未だ見つからない。 
/Volumes/Time Machine/Backups.backupdb/kojiMacBook-Air/2015-01-06-092319/Macintosh HD/Users/kojimatak…/.bash_profile 
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
export PATH=/usr/local/bin:usr/local/sbin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/ 
local/bin:/usr/local/mysql/binbin:/sbin:/opt/X11/bin:/usr/local/mysql/bin:/usr/local/ 
mysql/binexport PATH=/usr/local/Cellar/mysql/5.6.21/bin:$PATH 
メモ: 
最後の export PATH の最後に :$PATH が欠落していることが解ったので、ここから :$PATH をコピー & ペーストし保存した。
2015-01-07-155319/Macintosh HD//Users/kojimatak…/.bash_profile 
解決: 
kojiMacBook-Air:~ kojimatak…$ mysql.server start
Starting MySQL
.. SUCCESS!
kojiMacBook-Air:~ kojimatak…$ mysql -u root-p
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.21 Homebrew 
Copyright (c) 2000, 2014, 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. 
[(none)] mysql>