2015年1月30日LeopardでTomcatを自動起動させる無事Tomcatのインストールは終わったのですが、Macを起動させて自分のデスクトップが表示される時点で、自動的にTomcatを起動させたいという欲望に駆られています。中間鯖を利用してみたいのです。Leopardのシステム環境設定「省エネルギー設定」から「スケジュール」という項目で設定しています。共有はONが保たれ、Apacheが利用できています。Webで検索したら、Tomcatを自動起させるの記事はたくさん見つかったのですが、私のような初心者レベルにはスクリプトの書き方や設定の仕方がイマイチよくわからず、挫折してしまいました。ここで引き下がるわけにはいかないので、システムの仕組みがよくわからない初心者でも、システムに手を施すことなく、安全にTomcatを自動起動させる方法を考えてみました。システム環境設定の「アカウント」で「ログイン項目」を利用すれば、うまくいくんじゃないかと・・・。あとは、Tomcatのバージョンを切り替えてもいちいちログイン項目で設定し直さなくていいように、「/usr/local/tomcat/Current/bin/startup.sh」を呼ぶスクリプトというかアプリをつくればいいのですが、AppleScriptは知識が追いつかず失敗。いうわけで、Automatorを使って、Tomcatを自動起動させるアプリを作ってみましょう。アプリケーションフォルダに入っている、Automatorを起動します。新規ワークフローの開始点をどれにするか聞いてくるので、「カスタム」を選んで選択ボタンをクリックします。すると、ワークフローの画面が開きます。左上の方にある虫眼鏡のマークが付いた検索窓に、「シェル」と入力すると自動的に絞り込まれ、「シェルスクリプトを実行」というのがリストアップされます。シェルのポップアップメニュー部分が「/bin/bash」になっているので、「/bin/sh」を選びます。下の白いテキストボックス内に、「/usr/local/tomcat/Current/bin/startup.sh」と記入します。現在Tomcatが起動していないことを確認(http://localhost:8080/)し、一番右上の黒い右三角ボタンの「実行」をクリックします。すがすがしい音ともに、緑に白いレ点のマークが表示されれば、ワークフローがきちんと実行して完了したことになります。再度、Tomcatを確認(http://localhost:8080/)してみて下さい。Tomcatは起動しましたよね?あとは、このワークフローをアプリとして保存します。Automatorの「ファイル」メニューから「別名で保存...」を選ぶと保存先のダイアログが出てくるので、フォーマットが「ワークフロー」となっているので「アプリケーション」に選び直してから、自分のHomeディレクトリに「Tomcat起動」などと名前を付けて保存します。あとは、この「Tomcat起動」アプリをログイン項目に追加すればOKです。ついでに、「Tomcat終了」アプリもつくっておくといいでしょう。先と同様にテキストボックス内に「/usr/local/tomcat/Current/bin/shutdown.sh」と入れて、実行が確認できたらアプリケーションで保存するだけです。ダブルクリックでTomcatを終了できるようになります。LeopardにTomcatというものをインストールしないとW2Chの中間鯖がMac上で立てられないというのがきっかけで、早速Tomcatやらをインストールした備忘録です。X(Leopard)にTomcatをインストールを参考にさせていただきました。LeopardでTomcatをインストールされた記事が少なく、大変貴重な情報をありがとうございました。必要なものから(2008.01.05現在)。5.5.25をダウンロードします。DistributionsのCoreから、.zipもしくは.tar.gzをクリックすればOKです。ここでは、ファイルサイズの小さい「apache-tomcat-5.5.25.tar.gz」を取ってきてインストールしたいと思います。わかりやすいように、ダウンロードしてきた「apache-tomcat-5.5.25.tar.gz」をデスクトップに移動させます。Finderの「移動」メニューから「フォルダへ移動...」を選び、出てきたダイアログに下記のように入力して下さい。コピペでも大丈夫です。/usr/local「local」というフォルダが開かれ、いくつかフォルダが並んでいるかと思います。ここにTomcatをインストールするためのフォルダを作ります。ユーティリティフォルダ(/Applications/Utilities)にあるターミナルを起動し、下記のように入力してreturnキーを押します。この時、行頭の$と半角スペースは入力しないで下さい。/usr/local/tomcat「Password:」と聞いてくるので、システム管理者のパスワード(Leopardインストール時に設定したパスワード)を入力してreturnキーを押します。すると、「local」フォルダの中に「tomcat」フォルダが作成できたのがわかると思います。Finder上の「tomcat」フォルダをダブルクリックして中に移動します。このフォルダにダウンロードしてきた「apache-tomcat-5.5.25.tar.gz」をコピーします。Dropするとパスが自動的に入力されます(入力ミスが防げるし、長いパスの時は便利です)。続けて、「/usr/local/tomcat」と入力すると、下記のようになると思います。sudoから/tomcatまで改行なしの1行となります(一気にコピペで大丈夫です)。/usr/local/tomcat「Password:」と聞いてきたら入力します(さっさと進めれば、聞いてこないときもあります。以後、「sudo」で始まるコマンドを実行したときに「Password:」と聞いてきたら、その都度入力して下さい)。すると、「tomcat」フォルダの中に「apache-tomcat-5.5.25.tar.gz」がコピーされたのがFinder上から確認できると思います。ターミナルで入力するパスを短くするため、「tomcat」ディレクトリに移動します。/usr/local/tomcat「tomcat」フォルダの「apache-tomcat-5.5.25.tar.gz」を展開させます。apache-tomcat-5.5.25.tar.gzターミナルで目にもとまらぬ速さでファイルが展開されているのがわかります。展開が完了したら、Finder上でも「apache-tomcat-5.5.25」というフォルダができているのが確認できると思います。今後新しいバージョンや複数のバージョンのTomcatをインストールした際に、簡単に切り替えたりと、管理がしやすくなるように「Current」というシンボリックリンクを作成し、リンク先を「apache-tomcat-5.5.25」に設定します。/usr/local/tomcat/CurrentFinder上で「tomcat」フォルダの中に「Current」というエイリアスフォルダのようなアイコンが増えたと思います。これがシンボリックリンクです。今後、tomcatを呼び出すときは必ず「/usr/local/tomcat/Current」のように「Current」を介するようにします。一般ユーザからでも簡単に使えるようにするため、「/usr/local/tomcat/」内のディレクトリの所有者権限を変更します。/usr/local/tomcat/CurrentTomcatを起動する際に必要な環境変数「JAVA_HOME」を設定します。環境変数を有効にするためには、ターミナルを一度終了させる必要があります。ターミナルを終了して、再び立ち上げてから下記コマンドを入力します。.bash_profileここまでできれば、インストールは完了です。Tomcatを起動してみましょう。/usr/local/tomcat/Current/bin/startup.shSafari等のブラウザで以下のURLにアクセスし、猫がこっちを向いているページが表示されればインストール成功です。http://localhost:8080/Tomcatを終了させるには次のコマンドを入力します。DNSのDynDNSを利用して、昼休みにはP905iから自宅のrep2にアクセスしたりとなかなか快適に使っていたりします。W2Chを使ってみようと思い、このまとめwikiサイトを読んでると・・・。中間鯖というのを経由しなくてはならないと言うことが書いてあり、この中間鯖はお心優しい方たちがボランティアとなって無償で提供して下さってるらしいこと(もちろんアプリ自体も作者様が無償で提供して下さってます)。なにやらこの中間鯖は自分で構築できるとも書いてある。Xでの立て方が書いてない・・・。いうわけで正月休みに時間を割いて、自分専用のW2Ch中間鯖を立ててみることにトライしました。作者様による説明と、HMX様による説明を読み読みすると・・・。Apacheと連携するTomcatというかわいいネコのような名前のものが必要らしい。いえば、サーバー環境を整える際、Webで検索すると時々このネコちゃんを見かけたことがあるのを思い出しました。なんだかよくわからないけど、自分のMacで動かせるようなので、早速試したくなるのが人間よね(笑)。結論から言いますと・・・。中間鯖に負荷を気にしながら使うより、自分専用の中間鯖があった方が快適なことは明白・・・。TomcatのインストールおよびW2Chの中間鯖の立て方については、追ってエントリしたいと思います。2.2)を動かし、PHPも動作させる必要があるんですけど、Leopardをインストールしたときにすぐ利用できなくてあたふたしちゃった(Apacheが1.3ベースから2.2ベースになった)ので、備忘録ということで書いておこうと思います。初心者レベルだとちょっと難しいかと思いますが、意外とやってみたらそれほど難しくもないかと思うので、自己責任においてチャレンジしてみるのもいいかもしれません。Macには標準でApacheやPHPがインストールされてるので、他のOSより取っつきやすいはずですよ!まず、必要なものから(2008.01.04現在)。Toolsをインストールしてない人は、LeopardのインストールDVDから「XcodeTools.mpkg」をダブルクリックしてインストールしましょう(場所は下記パス参照)。Tools/XcodeTools.mpkg今後いろんなものをインストールしたりするときに必要になってくるので、これを機に入れておくことをおすすめします。今回はこのToolsのうち、インストール説明用として、FileMergeというのをのちほど使いたいと思っています。XとPseudoをアプリケーションフォルダ(/Applications)にインストールしておきます。落ち着いて作業しましょう!Finderの「移動」メニューから「フォルダへ移動...」を選び、出てきたダイアログに下記のように入力して下さい。コピペでも大丈夫です。/private/etc/apache2すると、「apache2」というフォルダが開かれ、ファイルやフォルダが並んでいると思います。ここで、Apacheの設定を司っているのが「httpd.conf」というファイルなので、これを編集します。重要なファイルなので、念のためバックアップを取っておきます。ユーティリティフォルダ(/Applications/Utilities)にあるターミナルを起動し、下記のように入力してreturnキーを押します。この時、行頭の$と半角スペースは入力しないで下さい。sudoから.backupまで改行なしの1行となります(一気にコピペで大丈夫です)。/private/etc/apache2/httpd.conf.backup「Password:」と聞いてくるので、システム管理者のパスワード(Leopardインストール時に設定したパスワード)を入力してreturnキーを押します。すると、「httpd.conf.backup」というファイルがFinder上に現れたと思います。「httpd.conf」と全く同じ中身の、同じアクセス権のファイルとして、「httpd.conf.backup」というバックアップファイルが作られました。Finderの「情報を見る」でファイルを見比べてみるとよくわかると思います。後で、デフォルトの「httpd.conf」に戻したいというときは、上記コマンドの「httpd.conf」と「httpd.conf.backup」を入れ替えて入力すればOKです。バックアップが作成できたら、ターミナルは終了して構いません。いったシステムやサーバ関連のファイルやフォルダは読むことはできても書き込んだりなどの編集は通常できないようになっています(先のコマンドもsudoという特別な呪文が必要なのはそういう理由からです)。そこで、普段から利用しているテキストエディタでもこれらのファイルを編集できるようにするのが、Pseudoの役目です。Dropさせてやります(「File」メニューから「Launch」を選び、ダイアログ経由でテキストエディタを選択しても同じです)。するとそのテキストエディタがシステム管理者の権限で実行されます。テキストエディタが起動したら、Pseudoは終了して構いません。Xの「表示」メニューから「行番号を表示」で「狭い幅で」を選び、同じく「表示」メニューから「行番号の単位」を「パラグラフ」にます。お好みで「不可視文字の表示」を「まとめて表示」を選ぶと、制御文字も表示されて見やすいかと思います。FileMergeで変更箇所がわかりやすいようにスクリーンショットを撮ってみました。クリックすると大きく表示されます。左側がバックアップの「httpd.conf.backup」、右側が変更後の「httpd.conf」です。httpd.confの114行目:PHPを有効にする行頭の#をとる。php5_modulelibexec/apache2/libphp5.sohttpd.confの147行目:管理者のメールアドレスを設定する本来なら管理者である自分のメールアドレスを入力するが、ひっそりと自分だけで使うなら表示不要のため、行頭に#を付ける。you@example.comhttpd.confの174行目FollowSymLinksをAllに書き換える。Allhttpd.confの175行目NoneをAllに書き換える。Allhttpd.confの203行目:SSIとCGIを有効にするMultiViewsのあとにIncludesとExecCGIを追記する。ExecCGIhttpd.confの210行目:.htaccessを有効にするNoneをAllに書き換える。Allhttpd.confの225行目:.index.phpや.index.cgiを省いても表示できるようにするindex.htmlのあとにindex.phpとindex.cgiを追記する。index.cgihttpd.confの324行目:行頭に#を付ける。"/Library/WebServer/CGI-Executables/$1"httpd.confの340〜345行目すべての行頭に#を付ける。.cgihttpd.confの402行目:SSIを拡張子.htmlのファイルで動かす行頭の#をとり、.shtmlを.htmlに書き換える。.htmlhttpd.confの403行目:SSIを拡張子.htmlのファイルで動かす行頭の#をとり、.shtmlを.htmlに書き換える。Xの「File」メニューから「保存」します。Xを終了して構いません。実際にApacheを起動します。システム環境設定を起動し、「共有」を選びます。共有」をクリックするとApacheが起動します。Safari等のブラウザで下記にアクセスします。2.2.6の起動は成功です!PHPが動作しているかは簡単にチェックできます。テキストエディタを起動し、下記内容の3行を記入し、プレーンテキスト形式で保存します。<?phpphpinfo();?>ファイル名を「test.php」などと、拡張子をphpに変更し、下記フォルダ(ディレクトリ)に置きます。5.2.4と表示され、環境等がずらずら表示されれば、無事PHPが動いています。確認ができたら、上記フォルダからtest.phpははずしておきましょう。他者にサーバーの環境等を盗み見られないようにするためです。CGIとSSIの動作確認については、パーミッションの設定や、セキュリティ上いろいろあるので、割愛させていただきます(Webで検索すればたくさん情報があるので)。Cafeにて配布されている、サーバーアナライザーを設置してみると、いろいろと情報が得られていいかもしれません。