初心者からのJavaEEマスターへの道のり。

分からないところ、失敗したところや苦労したところを書いていこうと思います。出来れば、それらが解決するところまでかけたらいいなぁと思っています。心優しい方、いろいろと教えてください。

apacheでバーチャルホストの設定

いつもはXamppに任せてたので、ちょっとはまりました。

①まずはC:\Apache24\conf\extraのhttpd-vhosts.confに記述

<VirtualHost *:80>
    ServerAdmin  localhost.hogehoge.com
    DocumentRoot "C:\Apache24\htdocs\hogehoge.com\public"
    ServerName localhost.hogehoge.com
    ServerAlias www.localhost.hogehoge.com
    ErrorLog "logs/localhost.hogehoge.com-error.log"
    CustomLog "logs/localhost.hogehoge.com-access.log" common
</VirtualHost>
<||


これでOK。表示してみるとIt,works!、あら、読み込んでない。

**②C:\Apache24\confのhttpd.confでバーチャルホストを有効にしなきゃいけなかった。

[f:id:wozmagic:20150311115636p:plain]

apacheを再起動させて、もう一度、表示してみる。


[f:id:wozmagic:20150311115756p:plain]

あれ、今度はphpが読めない設定になっているらしい。設定どこだっけ?
ありました。情報ありがとう。

ここを参考に
[http://www.sound-uz.jp/php/note/config5:title=http://www.sound-uz.jp/php/note/config5]

httpd.confの278行目あたりに、index.phpを追加
>||
<IfModule dir_module>
    DirectoryIndex index.html <span style="color: #d32f2f">index.php</span>
</IfModule>
<||



[f:id:wozmagic:20150311120612p:plain]

やったー。読み込んでくれました。laravel早く使ってみたいなぁ~。
レンタルのVPSサーバーなんかをレンタルすると、環境設定が大変です。なので、Xamppにいつも頼っていると、いろいろな事が分からなくなりますね。時間がかかってもいいから、コツコツ自分で環境を整えていこう。

windowsにPHP+apacheをインストール

題名がJavaEEマスターへの道のりなんですが、一旦、あきらめまして、また、PHPに戻ります。今まで、Xamppを使っていたのですが、今回を機にサーバーへの環境設定がいかに大事かをおもいしり、きちんとインストールとか出来るようになろうとやってみました。

PHPのインストール

http://php.net/から現段階での最新版PHP5.6.6をダウンロードします。
f:id:wozmagic:20150310203239p:plain
f:id:wozmagic:20150310203433p:plain

Thread Safeのものを選びましょう。Non Thread Safeにはapacheの連携に必要なファイルが入ってなくて、早速テンパリましたので・・・・。

f:id:wozmagic:20150310203956p:plain

解凍したら、Windowsのルートにphpフォルダを作成し、解凍したものをバージョンごとに入れておきます。

C:\PHP\5.6.6(バージョン別に分ける)

apacheのインストール

http://www.apachelounge.com/からダウンロードします。
f:id:wozmagic:20150310204909p:plain
f:id:wozmagic:20150310204917p:plain

解凍してルートに置いときます。
C:\Apache24


apachePHPの関連付け

参考:親方、空から覚え書きが|Apache Service Monitor を利用した PHP モジュールの切り替え


今回はバージョンごとにサービスを登録していきますのでそれを別ファイルに書き込んでいきます。
まずはC:\Apache24\confのhttpd.confファイルを開き、読み込みたいファイルをインクルードします。以下のコードを最後にコピーします。

#インクルードするファイル PHPをバージョンごとに管理
Include conf/extra/php.conf


次にC:\Apache24\conf\extraフォルダにphp.confを作成します。

# latest version on major 5.6.6
<IfDefine PHP5_6_6>
    LoadFile "C:\PHP\5.6.6\php5ts.dll"
    LoadModule php5_module "C:\PHP\5.6.6\php5apache2_4.dll"
    AddType application/x-httpd-php .php
    PHPINIDir "C:\PHP\5.6.6"
</IfDefine>

# latest version on major 4
<IfDefine PHP4>
    LoadFile "C:\PHP\4.4.7\php4ts.dll"
    LoadModule php4_module "C:\PHP\4.4.7\sapi\php4apache2.dll"
    AddType application/x-httpd-php .php
    PHPINIDir "C:\PHP\4.4.7"
</IfDefine>

# specified 5.5.2
<IfDefine PHP5_5_2>
    LoadFile "C:\PHP\5.5.2\php5ts.dll"
    LoadModule php5_module "C:\PHP\5.5.2\php5apache2_4.dll"
    AddType application/x-httpd-php .php
    PHPINIDir "C:\PHP\5.5.2"
</IfDefine>
<||

IfDefineタグは横に書かれているパラメータ(IfDefine PHP5_6_6だったらPHP5_6_6の部分)と合致した場合のみ、実行するタグです。
このパラメータはwindowsのサービスに登録します。



**④apacheをサービスとして登録する。
システムのプロパティ→環境変数からphpとapacheのPATHを通しておきます。
>||
;C:\Apache24\bin;C:\php\5.6.6;
<||

次にコマンドプロンプトを開き、
>||
httpd -k install -n "Apache2.4 with PHP5.6.6" -D PHP5_6_6
<||

>||
httpd -k install -n "Apache2.4 with PHP5.5.2" -D PHP5_5_2
<||

意味は次のようになります。
>||
httpd -k install -n "サービス名" -Dパラメータ名
<||


**④apacheモニターの利用
apacheの起動はapacheモニターを使うと便利ですので、タスクバーに登録しておきます。
C:\Apache24\binのなかのApacheMonitor.exe


[f:id:wozmagic:20150310212147p:plain]

**⑤PHPの動作確認
C:\Apache24\htdocsにphpinfo.phpを作成し、以下のソースを書き込みます。
>|php|
<?php
phpinfo();
?>
<||
apacheをモニターから再起動して、

http://localhost:80/phpinfo.php

を検索してみましょう。たぶんこれで行けるはず。

[f:id:wozmagic:20150310212734p:plain]

簡単にバージョンアップでのテストがしやすくなるので、助かります。


参考先のサイトを書かれた方、貴重な情報をありがとうございました。たいへん勉強になりました。

独自ドメインでのURLの表示法がどうしても分からない・・・・

Javaに人生を捧げるつもりでしたが、http://独自ドメインでの表示方法がどうしても分からず一旦挫折します。ごめんなさい。

このまま、止まっていては仕事に支障が出るので、時間を見つけては調査しようと思います。分かる方がいらっしゃいましたら、ご教授下さい。

しばらく、今まで通りPHPで開発するか・・・・くそ・・・情けない(泣)。

JavaEEに挑戦。Glassfishでアプリケーションを仮想ホストに割り当て1

まだ、下記の情報はまだ成功していません。行う場合は自己責任でお願いします。

 PHPからJavaEEに挑戦して間もないけど、JavaEEは大規模な案件で使われる事が多いらしく、バーチャルホストでマルチドメインを実現するような情報が乏しいですね。でもでもでも、人生には時間に限りがありますので、残りの人生Javaに捧げたいと思っています(だって、もうこれ以上プログラミング言語勉強するの嫌だもん・・・)ので小規模だろうが中規模だろうがJavaEEでWebアプリケーションを作ってみようと思うのです。ただのホームページでもJSFのテンプレートエンジンの利用だけで作ってみたいと思っています。

 たぶん、突っ走る方向間違っていますが、心優しい方、コメントで突っ込んでください。良い勉強になりますので、ぜひお願いします。


 今回、Glassfishでアプリケーションを仮想ホストに割り当てでCATCHIE BLOGを参考にさせていただきました。貴重な情報ありがとうございます。


やりたいことは
http://ホスト名またはipアドレス:8080/独自ドメイン名(アプリケーション名)/
→http://独自ドメイン

つまり、http://domain.sakura.ne.jp:8080/sample.com
http://sample.comにしてみたいのです。


環境は
レンタルサーバー: さくらVPS1G
Webサーバー: Apache
アプリケーションサーバー: Glassfish4.1
OS: CentOS






まずはローカル(windows)で手軽に試してみます。Webは後で

①hostsファイルへの記述

ここら辺にありますC:\Windows\System32\drivers\etc\hosts
以下を追記。たぶん、ローカル上のDNSへの登録みたいなものです。

127.0.0.1 localhost.localdomain localhost sample.com

glassfishを起動して、管理コンソールへhttp://localhost:4848にアクセス

NetBeansからglassfishを立ち上げ、サービス→GlassFish Serverで右クリック→ドメイン管理コンソールを開きます。
f:id:wozmagic:20150309122603p:plain
glassfishサーバーが立ちあがっていたら、http://localhost:4848に直接アクセスしてもかまいません。

③ネットワークリスナーの定義

ネットワークリスナーを探してみたら、default-configとserver-configの中にそれぞれ2つありました。stachoverflowに書かれていました。「defaultはテンプレートとして使う、サーバーの設定がしたいのならserver-configに行け」うーん、良く分かりませんが、他のページは目的は違うのですが、server-configで設定してたので、server-configにします。

f:id:wozmagic:20150309130149p:plain

出来るだけ、同じ値にしてみました。最後にOKをおしてね。

てか、ネットワークリスナーってなんだろうね?何度か読んだんだけど、いまいちピンとこないなぁ。検索用→glassfish ネットワークリスナー

④仮想サーバーの設定

f:id:wozmagic:20150309130830p:plain
新規を選択。

f:id:wozmagic:20150309131641p:plain

⑤ネットワークリスナーとデフォルト仮想サーバーの関連付け

Configurations>server-config>Network Config>Network Listeners>jkを選択
HTTPタグをクリック。

f:id:wozmagic:20150309132842p:plain

なんかMax Post Sizeがマイナスの値を取っていたので、int値を入れんかい!と警告がでました。なんかようわからんけど4096をいれてやりました。



⑥仮想サーバー「server1」にWarファイルを配備

Applicationを選択、配備をクリック。


ハロー.warをオラクルさんが配ってましたのでこちらで試してみます。

f:id:wozmagic:20150309134030p:plain

管理コンソールでの作業は終わりだそうです。

apacheのバーチャルホストを設定してみます。たぶん、/etc/httpd/conf.d/はシングルドメイン用?なのでC:\xampp\apache\conf\extra\http-vhosts.confに設定してみます。

<VirtualHost *:80>
    ServerName sample.com
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^sample.com$
    RewriteRule ^/(.*) ajp://server1.sample.com:8009/ $1 [P]
</VirtualHost>


よし、どーーーーーーーーーーーーなるのでしょうか?

Apacheが動かなくなりました。また、か~~~~~い。



apacheのバーチャルホストを設定を見直さないといけませんね。
取りあえず、昼ごはん食ってから、もう一度トライ!!


気を取り直しまして・・・。よくよく比較すると、やっぱり記述ミスが・・・。
http-vhosts.confファイルの記述は

<VirtualHost *:80>
    ServerName sample.com
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^sample.com$
    RewriteRule ^/(.*) ajp://server1.sample.com:8009/$1 [P]
</VirtualHost>

ですね。・・・とりあえず、apacheは起動しました。

そして、URLにhttp://sample.comを入れると・・・・・

f:id:wozmagic:20150309145611p:plain

sample.comさん、こんにちは~。他人のホームページにお邪魔しちゃいました。
このブログを見られた方、大変申し訳ありませんが・・・・。またまた、失敗です。


追記:hostsファイルにsampleじゃなくてtestと書いて間違ってました。
今度こそ、

127.0.0.1 localhost.localdomain localhost sample.com

を追加して。


URLにhttp://sample.comを入れると・・・・・


f:id:wozmagic:20150309150700p:plain


お~~~~~なんかエラーが出た。早速、調査してみよう。
http://oshiete.goo.ne.jp/qa/1463057.html

ここの情報をもとにproxy設定を行ってみようと思います。

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so

これらをコメントアウトして

ProxyRequests Off
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass http://localhost:8009/sample.com http://sample.com/
ProxyPassReverse http://localhost:8009/sample.com http://sample.com/

apacheを再起動させて、確認。

変わらず・・・。


今回は、もう分かりません。pod_proxyというのが気になるので、
別のブログを参考にして、やってみたいと思います。


ここまで、我慢強くみられた方、本当に申し訳ございません。
次回はきっとうまくいくはず。また、記事を書きますね。


追記:なぜかglassfishサーバーの管理コンソール画面が立ち上がらなくなりました。結構エラーが出まくってますね。新しく、glassfishを入れなおします。今度はV3で日本語版にしてみよう!!

JavaEE構築編 【さくらVPSにglassfish4.1をいれたけど、表示すらしないし。】→解決できました

さくらVPSにglassfish4.1を入れてみました

ちなみに環境はさくらVPSを使っていてwinからSSH接続で、操作しています。メモリはたったの1G。お金ないので・・・。CentOSのバージョンは何だったかな?

JDKのダウンロード

JavaEEなんでJavaEEから、ダウンロードするのかと思いきや、JavaSEをインストールするみたいです。みんなやってるし・・・。それから、一応、JavaEEもダウンロードしてみたんですが、中にはglassfish4が入っていました。Javaの本体無いじゃん!Web用のセットなんだろうと思います。
あと、JDK1.8が最新ですがJDK1.7にしました。僕の師匠(わかりやすいJavaEE(著:川場隆大先生)もそうしてたので。あとで、バグとかあったら解決できそうにないので、出来るだけ一緒に。

では、ORACLEさんからSDKをいただきます。

f:id:wozmagic:20150305134746p:plain

さくらVPSはデフォルトで64bitらしいので、
f:id:wozmagic:20150305135040p:plain

なんかAuthParamがいるみたいな事書いてあるんで、ダウンロードの途中。リンクをコピーします。f:id:wozmagic:20150305131705p:plain
f:id:wozmagic:20150305131926p:plain


それでは、CentOSでダウンロード

 wget http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.rpm?AuthParam=1425529020_3a7030a5c4f5eb21bc66bc58b3205f1d


f:id:wozmagic:20150305140528j:plain

それから、名前が長いので短くしました。

 mv http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.rpm?AuthParam=1425529020_3a7030a5c4f5eb21bc66bc58b3205f1d http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.rpm
Javaのインストール
rpm -ivh http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.rpm

これでJavaのインストール終わりです。画面がバーとなるので不安ですが、大丈夫っぽいです。確認でバージョンを調べます。

java -version

f:id:wozmagic:20150305141225p:plain

やったー。Googleやみなさんのお陰で一歩前進です。

③glassfish4.1をダウンロードします。

いよいよ、入れてみます。

glassfishもORACLEさんが配ってくれてます。ありがたや~。

f:id:wozmagic:20150305142114p:plain

wget http://dlc.sun.com.edgesuite.net/glassfish/4.1/release/glassfish-4.1.zip

f:id:wozmagic:20150305142314p:plain

④いよいよインストールなんですが解凍するだけらしいんです
unzip glassfish-4.1.zip

で、インストール完了。

⑤glassfish4にPATHを通してあげました。
cd /root
vi .bash_profile


f:id:wozmagic:20150305143628p:plain

⑥PATH(profile)の適用
$source ~/.bash_profile

出来なければ、再ログイン。

glassfishの起動
asadmin start-domain domain1

f:id:wozmagic:20150305144903p:plain


起動まで、成功しました。あとは、表示確認ですね。

http://「ipアドレス」:8080を検索エンジンに入れて、ドキドキの瞬間です。f:id:wozmagic:20150305145504p:plain

よし、失敗ですね。


ブログを始めて1日目ですが、僕のJavaEEの道は断たれたようです。もう、丸2日間、この状態です。かなりのページを検索しまくって、同じことの繰り返し。たぶん、全てやり尽くしましたが解決できません。


だれか、助けてくださーい!!何が間違ってるんでしょう?

解決できたら、続き書きます。よろしくお願いします。




追記:本日あきらめずに、別のWindowsで同じようにやってみたところ、簡単に成功しました。特に設定も必要無くものの10分程度で終わりました。

Linuxの設定がおかしいのではないかと思い、さくらVPSをもう一つレンタル(無料お試しプラン)をしちゃいました。まっさらなLinuxなので今度こそお魚ちゃんが見れる事を祈ってます。設定の問題で有れば、詳しく調査して分かり次第、報告します。



追記:出で出来ました~~~~~~~~~~~~~~~~。新しいサーバー借りたら一発です。たぶん、セキュリティやらなんやらで、いろいろと設定が変わってたのが原因っぽいです。もし、原因が分かれば、報告します。


f:id:wozmagic:20150306153026p:plain



追記:ファイアーウォールの問題でした。というか、ファイアーウォール良く分からないし、コピペしたから、こういうことになったんだろうなぁ。自業自得です。ファイアーウォール勉強します。

JavaEEをマスターしたい。初心者からの道のり(まずは自己紹介)

まずは紹介から、僕はフリーランスプログラマーをやってるものです。ホームページや何かしら、無駄にいろいろと作ってきました。その時は、絶対もうかると思ってやっては来たのですが、全然です。プログラミングは全て独学でやってきたので、これからも、何とかマスターを目指して頑張っていこうと思います。

 

今まではというと、HTMLやCSSJavascriptPHPとテンプレートエンジン(smarty)、MySQLを使ってホームページを作っていたのですが、いずれは大規模なサイトを作りたいので、出来るだけセキュアで安定していて速度が速いということでJavaEEなるものにたどり着いたのです。これがベストな道なのか、Google先生以外、相談できる人?がいないので分からないのですが・・・。

 

プログラミングよりも、サーバー構築がめちゃくちゃ苦手です。ターミナルに文字打ってたら、イライラする。なんか、黒と白だけでさみしいし。あと、ちょっと文字打ったら、文字がばーと出てきますよね。勝手に・・・。すごく不安。

 

そんな感じでサーバー構築をやってます(泣)。たぶん、谷あり谷ありで、止まりまくりだとは思いますが、もし心優しい方がおられましたら、応援してください。分かんないところ教えてください。よろしくお願いします。

 

 

では、早速つまずいたので、僕のさくらVPSサーバーにglassfish4.1をインストールをご覧あれ。表示すらしないよ。なんで?みんなと同じ事やってるはずなのに・・・。