yumと外部リポジトリの力を借りれば、作業は数行のコマンドだけ
前回の投稿でも確認しましたが「CentOS Linux 5.8」のデフォルトだと「PHPが5.1.6」で、最新のWordPress動作条件を満たしていません。
この投稿ではパッケージ管理システムのyumと外部リポジトリを利用して、PHPをバージョンアップする方法と、初期設定を解説します。
現在インストールされているPHPのバージョンを確認
バージョンの確認には「-v」オプションを利用します。
※コマンドラインの見方
「コマンド」「引数、その他」「コメント」「#(rootユーザ)」「$(一般ユーザ)」
# php -v PHP 5.1.6 (cli) (built: Jun 27 2012 12:21:13) Copyright (c) 1997-2006 The PHP Group Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
5.1.6がインストールされていることがわかります。
新旧のファイルが混在すると思わぬ不具合が発生するため、PHPに関連する古いファイルを「1度アンインストールしてから、新しいファイルをインストール」します。
まずは「yumコマンド」でPHPをアンインストールします。解説では「eraseコマンド」を利用していますが、「removeコマンド」でも動作は同じです。好きな方を使ってください。
# yum erase php Loaded plugins: downloadonly, fastestmirror, priorities Setting up Remove Process Resolving Dependencies --> Running transaction check ---> Package php.x86_64 0:5.1.6-39.el5_8 set to be erased --> Processing Dependency: php >= 5.1.6 for package: php-mcrypt --> Running transaction check ---> Package php-mcrypt.x86_64 0:5.1.6-15.el5.centos.1 set to be erased --> Finished Dependency Resolution Dependencies Resolved ============================================================================================= Package Arch Version Repository Size ============================================================================================= Removing: php x86_64 5.1.6-39.el5_8 installed 6.3 M Removing for dependencies: php-mcrypt x86_64 5.1.6-15.el5.centos.1 installed 37 k Transaction Summary ============================================================================================= Remove 2 Package(s) Reinstall 0 Package(s) Downgrade 0 Package(s) Is this ok [y/N]: y ←アンインストールをしていいかYES/NOと聞かれるので「y」と入力してEnter Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Erasing : php-mcrypt 1/2 Erasing : php 2/2 Removed: php.x86_64 0:5.1.6-39.el5_8 Dependency Removed: php-mcrypt.x86_64 0:5.1.6-15.el5.centos.1 Complete!
「Complete!」と出れば正常にアンインストールされています。
「Removing for dependencies:」の欄で「php-mcrypt」も同時にアンインストールされていることに注目してください。「yum」ではインストールまたはアンインストール時に、依存関係にあるファイルを同時に処理します。 注意しなくてはいけないのは、「php-mcrypt」の動作には「php」が必須ですが、「php」の動作には「php-mcrypt」が必須ではないということです。 つまり、「php」のアンインストール時に「php-mcrypt」も同時にアンインストールされますが、「php」の動作には「php-mcrypt」が必須ではないので、「php」のインストール時に、同時にインストールされません。そのため、同じ状態に戻すには「php」と「php-mcrypt」の2つを指定する必要があります。 このような事情から、Linuxでの作業に慣れるまでは、インストールやアンインストールしたソフトだけでなく、依存関係にあって処理されたソフトもメモを取ったほうが安心です。 最悪忘れた場合でも「yumコマンド」のログは「/var/log/yum.log」、インストール済みのパッケージは「/var/log/rpmpkgs」に一覧が保存されています。もしもの場合は、参照してみてください。
1度に必要な全てのソフトをアンインストールして、インストールし直すことも可能ですが、作業に慣れるために、あえて1つずつ順序立てて作業していきます。
既にインストールされているPHP関連のパッケージをアンインストール
PHPに関連するパッケージは「php」という名前が付いていることが多いため、以下のコマンドで探すことができます。
# rpm -qa | grep php
この特性を知っている場合は以下のコマンドで全ての関連ファイルを削除することもできます。
「php」の後にある「*(アスタリスク)」は「phpの後にどんな言葉がきてもマッチ」するという意味になります。
つまり「phpという名前の付くパッケージを全て削除する」という指定になります。
# yum erase php*
上記の方法で関連するパッケージを全て指定してもいいですが、今回は依存関係にあるものを削除してくれるyumの特性を利用して「php-common」をアンインストールしてみます。
# yum erase php-common Loaded plugins: downloadonly, fastestmirror, priorities Setting up Remove Process Resolving Dependencies --> Running transaction check ---> Package php-common.x86_64 0:5.1.6-39.el5_8 set to be erased --> Processing Dependency: php-common = 5.1.6-39.el5_8 for package: php-mbstring --> Processing Dependency: php-common = 5.1.6-39.el5_8 for package: php-gd --> Processing Dependency: php-common = 5.1.6-39.el5_8 for package: php-pdo --> Processing Dependency: php-common = 5.1.6-39.el5_8 for package: php-cli --> Processing Dependency: php-common = 5.1.6-39.el5_8 for package: php-mysql --> Running transaction check ---> Package php-cli.x86_64 0:5.1.6-39.el5_8 set to be erased ---> Package php-gd.x86_64 0:5.1.6-39.el5_8 set to be erased ---> Package php-mbstring.x86_64 0:5.1.6-39.el5_8 set to be erased ---> Package php-mysql.x86_64 0:5.1.6-39.el5_8 set to be erased ---> Package php-pdo.x86_64 0:5.1.6-39.el5_8 set to be erased --> Finished Dependency Resolution Dependencies Resolved ============================================================================================= Package Arch Version Repository Size ============================================================================================= Removing: php-common x86_64 5.1.6-39.el5_8 installed 397 k Removing for dependencies: php-cli x86_64 5.1.6-39.el5_8 installed 5.3 M php-gd x86_64 5.1.6-39.el5_8 installed 333 k php-mbstring x86_64 5.1.6-39.el5_8 installed 1.8 M php-mysql x86_64 5.1.6-39.el5_8 installed 196 k php-pdo x86_64 5.1.6-39.el5_8 installed 114 k Transaction Summary ============================================================================================= Remove 6 Package(s) Reinstall 0 Package(s) Downgrade 0 Package(s) Is this ok [y/N]: y ←アンインストールをしていいかYES/NOと聞かれるので「y」と入力してEnter Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Erasing : php-mysql 1/6 Erasing : php-gd 2/6 Erasing : php-pdo 3/6 Erasing : php-cli 4/6 Erasing : php-mbstring 5/6 Erasing : php-common 6/6 Removed: php-common.x86_64 0:5.1.6-39.el5_8 Dependency Removed: php-cli.x86_64 0:5.1.6-39.el5_8 php-gd.x86_64 0:5.1.6-39.el5_8 php-mbstring.x86_64 0:5.1.6-39.el5_8 php-mysql.x86_64 0:5.1.6-39.el5_8 php-pdo.x86_64 0:5.1.6-39.el5_8 Complete!
このように「yumコマンド」でアンインストールをすれば「php-common」と依存関係にある「php-mbstring」「php-cli」「php-pdo」「php-gd」「php-mysql」も同時に削除されます。
どのパッケージが依存関係にあるのかわからない時は、「yumコマンド」を利用すると後にパッケージが競合してしまうミスを防ぐことができます。
PHP5.4のインストール
ここで前回の投稿で追加した外部リポジトリを利用します。現在追加した外部リポジトリで提供されるものも含めて、インストール可能なパッケージの検索は以下のコマンドで確認できます。
# yum list | grep php
リストを見ると「PHP5.4」が1番新しいようなので、インストールします。
前回外部リポジトリの優先順位を設定した際に各リポジトリの設定を「enabled=0」で無効にしたため「–enablerepo=remi,epel,ius」オプションを追加して有効にします。
# yum install --enablerepo=remi,epel,ius php54 Loaded plugins: downloadonly, fastestmirror, priorities Loading mirror speeds from cached hostfile * addons: mirror.centos.org * base: www.ftp.ne.jp * contrib: mirror.centos.org * epel: ftp.iij.ad.jp * extras: www.ftp.ne.jp * ius: mirror.rackspace.hk * updates: www.ftp.ne.jp 275 packages excluded due to repository priority protections Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php54.x86_64 0:5.4.6-2.ius.el5 set to be updated --> Processing Dependency: php54-common = 5.4.6-2.ius.el5 for package: php54 --> Processing Dependency: php54-cli = 5.4.6-2.ius.el5 for package: php54 --> Running transaction check ---> Package php54-cli.x86_64 0:5.4.6-2.ius.el5 set to be updated --> Processing Dependency: libedit.so.0()(64bit) for package: php54-cli ---> Package php54-common.x86_64 0:5.4.6-2.ius.el5 set to be updated --> Running transaction check ---> Package libedit.x86_64 0:2.11-2.20080712cvs.el5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================================= Package Arch Version Repository Size ============================================================================================= Installing: php54 x86_64 5.4.6-2.ius.el5 ius 3.1 M Installing for dependencies: libedit x86_64 2.11-2.20080712cvs.el5 epel 80 k php54-cli x86_64 5.4.6-2.ius.el5 ius 2.9 M php54-common x86_64 5.4.6-2.ius.el5 ius 1.0 M Transaction Summary ============================================================================================= Install 4 Package(s) Upgrade 0 Package(s) Total download size: 7.0 M Is this ok [y/N]: y ←インストールをしていいかYES/NOと聞かれるので「y」と入力してEnter Downloading Packages: (1/4): libedit-2.11-2.20080712cvs.el5.x86_64.rpm | 80 kB 00:00 (2/4): php54-common-5.4.6-2.ius.el5.x86_64.rpm | 1.0 MB 00:02 (3/4): php54-cli-5.4.6-2.ius.el5.x86_64.rpm | 2.9 MB 00:03 (4/4): php54-5.4.6-2.ius.el5.x86_64.rpm | 3.1 MB 00:03 --------------------------------------------------------------------------------------------- Total 654 kB/s | 7.0 MB 00:10 警告: rpmts_HdrFromFdno: ヘッダ V3 DSA signature: NOKEY, key ID 217521f6 epel/gpgkey | 1.7 kB 00:00 Importing GPG key 0x217521F6 "Fedora EPEL" from /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL Is this ok [y/N]: y ←RPM-GPG-KEY-EPEL-KEYをインストールをしていいかYES/NOと聞かれるので「y」と入力してEnter warning: rpmts_HdrFromFdno: Header V4 DSA signature: NOKEY, key ID 9cd4953f ius/gpgkey | 1.3 kB 00:00 Importing GPG key 0x9CD4953F "IUS Community Project " from /etc/pki/rpm-gpg/IUS-COMMUNITY-GPG-KEY Is this ok [y/N]: y ←IUS-COMMUNITY-GPG-KEYをインストールをしていいかYES/NOと聞かれるので「y」と入力してEnter Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : php54-common 1/4 Installing : libedit 2/4 Installing : php54-cli 3/4 Installing : php54 4/4 Installed: php54.x86_64 0:5.4.6-2.ius.el5 Dependency Installed: libedit.x86_64 0:2.11-2.20080712cvs.el5 php54-cli.x86_64 0:5.4.6-2.ius.el5 php54-common.x86_64 0:5.4.6-2.ius.el5 Complete!
これで「php54」の他に依存関係にある「libedit」「php54-cli」「php54-common」も同時にインストールできました。
GPG-KEYについて補足
「GPGキー」とは各リポジトリやディストリビューションの提供する「署名用の鍵」で、ファイルの偽造防止のために利用されます。
今回のように初回利用時にインストールされます。フィンガープリントを確認してインストールしたい場合は、各ディストリビューションのサイトにアクセスして入手してください。
参考までにRed Hatの例
https://access.redhat.com/security/team/key/
また、正当性の証明には「PGP Key Server」を利用しても確保できます。
鍵のID(上記の例で言えばEPELであれば0x217521F6)を入力して内容を確認します。
PGP Key Serverのリンク
http://pgp.mit.edu/
http://pgp.nic.ad.jp/pgp/
続けてアンインストールされて、まだインストールされていないパッケージをインストール
今回は「php54-mysql」「php54-gd」「php54-pdo」「php54-mbstring」です。続けて指定する時はスペースで区切ります。
# yum install --enablerepo=remi,epel,ius php54-mysql php54-gd php54-pdo php54-mbstring Loaded plugins: downloadonly, fastestmirror, priorities Loading mirror speeds from cached hostfile * addons: mirror.centos.org * base: www.ftp.ne.jp * contrib: mirror.centos.org * epel: ftp.iij.ad.jp * extras: www.ftp.ne.jp * ius: mirror.sothatswhy.org.uk * updates: www.ftp.ne.jp 0 packages excluded due to repository priority protections Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php54-gd.x86_64 0:5.4.6-2.ius.el5 set to be updated --> Processing Dependency: libt1.so.5()(64bit) for package: php54-gd --> Processing Dependency: libXpm.so.4()(64bit) for package: php54-gd ---> Package php54-mbstring.x86_64 0:5.4.6-2.ius.el5 set to be updated ---> Package php54-mysql.x86_64 0:5.4.6-2.ius.el5 set to be updated ---> Package php54-pdo.x86_64 0:5.4.6-2.ius.el5 set to be updated --> Running transaction check ---> Package libXpm.x86_64 0:3.5.5-3 set to be updated ---> Package t1lib.x86_64 0:5.1.1-9.el5 set to be updated --> Processing Dependency: libXaw.so.7()(64bit) for package: t1lib --> Running transaction check ---> Package libXaw.x86_64 0:1.0.2-8.1 set to be updated --> Processing Dependency: libXmu.so.6()(64bit) for package: libXaw --> Running transaction check ---> Package libXmu.x86_64 0:1.0.2-5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================================================================================================ Package Arch Version Repository Size ================================================================================================================================================================ Installing: php54-gd x86_64 5.4.6-2.ius.el5 ius 192 k php54-mbstring x86_64 5.4.6-2.ius.el5 ius 1.2 M php54-mysql x86_64 5.4.6-2.ius.el5 ius 157 k php54-pdo x86_64 5.4.6-2.ius.el5 ius 104 k Installing for dependencies: libXaw x86_64 1.0.2-8.1 base 329 k libXmu x86_64 1.0.2-5 base 63 k libXpm x86_64 3.5.5-3 base 44 k t1lib x86_64 5.1.1-9.el5 epel 208 k Transaction Summary ================================================================================================================================================================ Install 8 Package(s) Upgrade 0 Package(s) Total download size: 2.3 M Is this ok [y/N]: y ←インストールをしていいかYES/NOと聞かれるので「y」と入力してEnter Downloading Packages: (1/8): libXpm-3.5.5-3.x86_64.rpm | 44 kB 00:00 (2/8): libXmu-1.0.2-5.x86_64.rpm | 63 kB 00:00 (3/8): php54-pdo-5.4.6-2.ius.el5.x86_64.rpm | 104 kB 00:00 (4/8): php54-mysql-5.4.6-2.ius.el5.x86_64.rpm | 157 kB 00:00 (5/8): php54-gd-5.4.6-2.ius.el5.x86_64.rpm | 192 kB 00:01 (6/8): t1lib-5.1.1-9.el5.x86_64.rpm | 208 kB 00:00 (7/8): libXaw-1.0.2-8.1.x86_64.rpm | 329 kB 00:00 (8/8): php54-mbstring-5.4.6-2.ius.el5.x86_64.rpm | 1.2 MB 00:01 ---------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 396 kB/s | 2.3 MB 00:05 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : libXpm 1/8 Installing : libXmu 2/8 Installing : libXaw 3/8 Installing : t1lib 4/8 Installing : php54-pdo 5/8 Installing : php54-mbstring 6/8 Installing : php54-gd 7/8 Installing : php54-mysql 8/8 Installed: php54-gd.x86_64 0:5.4.6-2.ius.el5 php54-mbstring.x86_64 0:5.4.6-2.ius.el5 php54-mysql.x86_64 0:5.4.6-2.ius.el5 php54-pdo.x86_64 0:5.4.6-2.ius.el5 Dependency Installed: libXaw.x86_64 0:1.0.2-8.1 libXmu.x86_64 0:1.0.2-5 libXpm.x86_64 0:3.5.5-3 t1lib.x86_64 0:5.1.1-9.el5 Complete!
これでPHP関連のパッケージは新しくなりました。
しかしこのままだと後に設定する「MySQL」で「mcrypt 拡張をロードできません。PHP の設定を確認してください」とアラートが出るので、ついでに「mcrypt」もインストールしておきます。
# yum install --enablerepo=remi,epel,ius php54-mcrypt Loaded plugins: downloadonly, fastestmirror, priorities Loading mirror speeds from cached hostfile * addons: mirror.centos.org * base: www.ftp.ne.jp * contrib: mirror.centos.org * epel: ftp.iij.ad.jp * extras: www.ftp.ne.jp * ius: mirror.sothatswhy.org.uk * updates: www.ftp.ne.jp 0 packages excluded due to repository priority protections Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php54-mcrypt.x86_64 0:5.4.6-2.ius.el5 set to be updated --> Processing Dependency: libltdl.so.3()(64bit) for package: php54-mcrypt --> Running transaction check ---> Package libtool-ltdl.x86_64 0:1.5.22-7.el5_4 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================================================================================================ Package Arch Version Repository Size ================================================================================================================================================================ Installing: php54-mcrypt x86_64 5.4.6-2.ius.el5 ius 31 k Installing for dependencies: libtool-ltdl x86_64 1.5.22-7.el5_4 base 38 k Transaction Summary ================================================================================================================================================================ Install 2 Package(s) Upgrade 0 Package(s) Total download size: 69 k Is this ok [y/N]: y ←インストールをしていいかYES/NOと聞かれるので「y」と入力してEnter Downloading Packages: (1/2): php54-mcrypt-5.4.6-2.ius.el5.x86_64.rpm | 31 kB 00:00 (2/2): libtool-ltdl-1.5.22-7.el5_4.x86_64.rpm | 38 kB 00:00 ---------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 52 kB/s | 69 kB 00:01 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : libtool-ltdl 1/2 Installing : php54-mcrypt 2/2 Installed: php54-mcrypt.x86_64 0:5.4.6-2.ius.el5 Dependency Installed: libtool-ltdl.x86_64 0:1.5.22-7.el5_4 Complete!
依存関係にある「libtool-ltdl」も同時にインストールされています。
これでPHPに関連したインストール作業は終わりです。
インストールしたPHPのバージョンを確認
下記のコマンドで、インストールしたバージョンを確認します。
# php -v PHP 5.4.6 (cli) (built: Aug 21 2012 10:04:55) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
バージョンが確認できたら、Apacheを再起動してPHPを有効にします。
# /etc/rc.d/init.d/httpd restart
phpinfoファイルを作ってApache上で動作確認
Apacheの公開ディレクトリ(例ではhoge)に「phpinfo.php」を作成します。
# vi /var/www/hoge/phpinfo.php
viエディタでファイルを作成して以下の内容で保存してください。またはローカルでファイルを作成して、WinSCP等で公開ディレクトリへファイルをアップロードしてください。
<?php phpinfo(); ?>
編集が終了したらアクセスして確認します。(example.comは自分のドメインに置き換えてください)
http://example.com/phpinfo.php
以下のような画面が出たら正常に動作しています。
PHPの初期設定
PHPのバージョンを確認できたので、基本的な設定をしていきます。設定ファイルは「/etc/php.ini」にあります。
まずは設定ファイルを編集する前のセオリー、バックアップを作成してから、viで編集します。
# cd /etc # cp php.ini php.ini.org # vi php.ini
viで「php.ini」を開いたらコマンドモードで以下のコマンドを打つと行番号が表示されます。解説にある○行目という場所を探す際にご利用ください。
:set number
もしくはコマンドモードで「/(スラッシュ)」の後に検索したいワードを入力して、Enterでヒットした場所に移動することもできます。(以下はdate.timezoneを検索する例)
/date.timezone ←コマンドモードで入力したらEnter
タイムゾーンの設定
タイムゾーンが設定されていないと、時間で動作するプログラムが誤作動する危険があります。
880行目当たり[Date]セクションにある「date.timezone」を編集します。
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone ;date.timezone = date.timezone = Asia/Tokyo
エラーログの設定
デバック作業の強い味方、エラーログについて設定します。
584行目あたりを外して編集します。ログを書きだす場所はどこでもいいですが、せっかくログ用のディレクトリが用意されているので「/var/log/」にまとめておきます。
; Example: ;error_log = php_errors.log error_log = /var/log/php_errors.log ; Log errors to syslog (Event Log on NT, not valid in Windows 95).
日本語を利用できるように設定
マルチバイト文字を利用できるようにします。(php_mbstring.dllはWindows用のものなので設定の必要はありません)
1679行目あたり、[mbstring]セクションを編集します。
「mbstring.language」のコメントアウトを削除。
「mbstring.internal_encoding」のコメントアウトを削除して、「UTF-8」へ変更。
「mbstring.http_input」と「bstring.http_output」は「pass」に変更。
[mbstring] ; language for internal character representation. ; http://php.net/mbstring.language ;mbstring.language = Japanese mbstring.language = Japanese ; internal/script encoding. ; Some encoding cannot work as internal encoding. ; (e.g. SJIS, BIG5, ISO-2022-*) ; http://php.net/mbstring.internal-encoding ;mbstring.internal_encoding = EUC-JP mbstring.internal_encoding = UTF-8 ; http input encoding. ; http://php.net/mbstring.http-input ;mbstring.http_input = auto mbstring.http_input = pass ; http output encoding. mb_output_handler must be ; registered as output buffer to function ; http://php.net/mbstring.http-output ;mbstring.http_output = SJIS mbstring.http_output = pass
1679行目あたり「mbstring.detect_order」を「auto」から「UTF-8,EUC-JP,SJIS,JIS,ASCII」へ変更。autoだとアスキーなどのエンコードが優先されるため、明示的に指定します。
; automatic encoding detection order. ; auto means ; http://php.net/mbstring.detect-order ;mbstring.detect_order = auto mbstring.detect_order = UTF-8,EUC-JP,SJIS,JIS,ASCII
イースタエッグ隠し!
遊び心を殺すようで心苦しいですが、余計な表示は出ないほうがいいので、1688行目あたり「expose_php」を「Off」にします。
; http://php.net/expose-php ;expose_php = On expose_php = Off
モジュールのパスを設定
最後に確認で770行目あたり、モジュールのパスが設定されているか調べてください。
extension_dir = /usr/lib64/php/modules
32bitの場合は「/usr/lib/php/modules」になります。
以上で基本的なPHPの設定は完了です。変更した設定ファイルを保存してください。
ログファイルを作成
先ほど設定したログファイルを作成してPHPの実行ユーザー(Apacheの実行ユーザー)に書き込みの権限を与えます。
# touch /var/log/php_errors.log ←空のログファイルを作成 # chown root:www /var/log/php_errors.log ←rootとグループにwww(Apacheの実行ユーザー)を追加 # chmod 660 /var/log/php_errors.log ←グループユーザーにも書き込み権限を与える
最後にApacheを再起動します。
# /etc/rc.d/init.d/httpd restart
最後に「phpinfo.php」で設定が有効になっているか確認してください。
確認が終わったら「phpinfo.php」を削除、または外部からアクセスできない場所に移動しておいてください。悪意ある利用者に不要な情報を与えるため、セキュリティ上のリスクになります。
これでPHPのバージョンアップが完了しました。
次は「目を見張るスピードで進化を続けるMySQLのバージョンアップと初期設定」を解説します。
ピンバック: 独学でPHPプログラミング&奈良・関西お寺名所巡り