October 16, 2006

MySQL5の権限設定、文字エンコーディングなど

※随分前に書いていたものですがblogにしておかないと探すのが面倒なのでアップ。

■MySQL再インストール
# cd /usr/ports/databases/mysql50-server
# make WITH_XCHARSET=all
# make install

# cp /usr/local/share/mysql/my-medium.cnf /usr/local/etc/my.cnf

# mkdir /var/log/mysql
# chown -R mysql:mysql /var/log/mysql/

#vi /usr/local/etc/my.cnf

log = /var/log/mysql/mysql.log
log-error = /var/log/mysql/mysql-err.log


■権限を限定したデータベースを作成
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or ?g.
Your MySQL connection id is 14 to server version: 5.0.18

Type 'help;' or '?h' for help. Type '?c' to clear the buffer.

mysql> CREATE DATABASE user01;
Query OK, 1 row affected (0.01 sec)

mysql> GRANT ALL on user01.* TO user01@localhost IDENTIFIED BY 'xxxxxxxx';
Query OK, 0 rows affected (0.00 sec)

※「user01」は実ユーザ。

■文字コード設定
#vi /usr/local/etc/my.cnf

[client]
default-character-set = utf8

[mysqld]
log = /var/log/mysql/mysql.log
log-error = /var/log/mysql/mysql-err.log

skip-character-set-client-handshake
default-character-set = utf8

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8

※変更箇所のみ

上記の作業をしないとソフトに文字化けが発生するので確認したところ、こんな感じになっていました。
mysql> use user01
Database changed
mysql> SHOW VARIABLES LIKE 'char%';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
7 rows in set (0.00 sec)


latin1...


参考
http://kuina.jugem.jp/?eid=245
http://melanges.kuma.nu/060420121309.html
http://puchiko.lowtech.ne.jp/index.php?itemid=349  

August 04, 2006

Apache2.2でSuexec設定

あまり真面目に設定したことがなかったSuExecをApache2.2で使ってみたメモ。

・パス
 /home/username/public_html

・URL
 http://IPアドレスorドメイン/~username/
 http://ドメイン/

バーチャルドメインがなくとも利用できるように、パスとURLの関連は上記のようにした。
バーチャルドメイン用のユーザのuidは10001〜、gidは10000とする。グループ名は「user」。
/~username/でのアクセスはは、特定のドメインでのみ許可するものとする。(特定ドメイン以外はUserDir disabled)


Apache2をSuExec付きで再インストール。
# cp /usr/local/etc/apache22/ (書き間違い。MItukasaさんのご指摘で修正。8/4)
# cd /usr/ports/www/apache22/
# make show-options
# make clean
# make deinstall
# make WITH_PROXY_MODULES=yes WITH_SUEXEC=yes SUEXEC_DOCROOT=/home
# make reinstall


SuExecを有効にする。
# vi /usr/local/etc/apache22/httpd.conf
追加
LoadModule suexec_module libexec/apache22/mod_suexec.so


ユーザディレクトリ(/home/*/public_html)へのアクセス設定を有効にする。
# vi /usr/local/etc/apache22/httpd.conf
↓コメントアウトを外す
Include etc/apache22/extra/httpd-userdir.conf

これで下記へのアクセスが可能となる。
http://ドメイン/~username/xx.html


SuExec用にグループ作成
# vi /etc/group
user:*:10000:

こんな感じで追加。SeExecのMIN GIDはデフォルト(1000)なので1000以上であれば良い。

対象ユーザのGROUP IDを変更
# vipw
username:xxxxx:10001:10000::0:0:User &:/home/username:/bin/sh


public_htmlの権限調整
# chown username:user /home/username/public_html


いろいろ設定。
# vi /usr/local/etc/apache22/extra/httpd-userdir.conf
↓下記変更
AllowOverride All
Options ExecCGI MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec


バーチャルディレクティブ用のファイルを作る。
(httpd.confに「Include etc/apache22/Includes/*.conf」があれば勝手に読み込まれます)
# vi /usr/local/etc/apache22/Includes/virtual.conf
<VirtualHost *:80>
SuexecUserGroup username user
ServerName test.example.com
UserDir disabled
ServerAdmin admin@test.example.com
DocumentRoot /home/username/public_html
ErrorLog /var/log/httpd-test.example.com-error.log
CustomLog /var/log/httpd-test.example.com-access.log combined
</VirtualHost>


httpd.conf読み直し。
# /usr/local/sbin/apachectl graceful



※httpd.confのデフォルト設定では「/」へのアクセスがdenyされているため、
 UserDir(/usr/local/etc/apache22/extra/httpd-userdir.conf)にて、
 「/home/*/public_html」に対するアクセス設定を許可しているわけですが、
 VirtualHostディクティブに「DocumentRoot 、/usr/home/username/public_html」
 などと書くと、パスが違うと見なされて動作しません。

 当初これに気づかなかったため、何日もerror-logの
 client denied by server configuration:を眺めることになりました。orz


参考
http://www.fkimura.com/apache10.html
http://www.dadd9.com/tech/networkadmin_01.html
http://www.aconus.com/~oyaji/www/apache_linux_suexec.htm
http://www.toshikazu.org/archives/000009.html
http://mm.apache.or.jp/pipermail/newbie/2003-September/004011.html



■その他Apacheの設定。

エラー表示を有効にしておく。
# vi /usr/local/etc/apache22/httpd.conf
↓コメントアウトを外す
Include etc/apache22/extra/httpd-multilang-errordoc.conf


Apache情報の隠蔽
# vi /usr/local/etc/apache22/extra/httpd-userdir.conf
↓コメントアウトを外す
Include etc/apache22/extra/httpd-default.conf

# vi /usr/local/etc/apache22/extra/httpd-default.conf
#ServerTokens Full
ServerTokens Minimal

  

May 16, 2006

portsからmod_proxy付きでApache2をインストール

portsでいれたらmod_proxyがなかった。入れ直し。リバースプロキシ設定。

# vi /usr/local/etc/apache22/Includes/virtual.conf
NameVirtualHost *:80
<VirtualHost *:80>
ServerName example.com
ServerAdmin webmaster@example.com
DocumentRoot /usr/local/www/apache22/data
ErrorLog /var/log/httpd-example.com-error.log
CustomLog /var/log/httpd-example.com-access.log combined

ProxyPass / http://192.168.0.200/
ProxyPassreverse / http://192.168.0.200/
</VirtualHost>



下記追加
# vi /usr/local/etc/apache22/httpd.conf
LoadModule proxy_module libexec/apache22/mod_proxy.so
LoadModule proxy_http_module libexec/apache22/mod_proxy_http.so


# cd /usr/ports/www/apache22/
# make deinstall
# make clean
# make WITH_PROXY_MODULES=yes
# make install
# /usr/local/etc/rc.d/apache22.sh start



参考
http://mimori.org/~h/tdiary/20041014.html  

May 15, 2006

Apache2.2+PHP5+phpMyAdmin+MySQLインストール

新しいPCに環境を作る必要があったので適当に作成。この作業何度目だろう・・いい加減面倒になってきました。しかもmakeが遅くてこれだけの作業なのに存外時間を取られてしまいました。無念。

一応最低限の環境構築メモとして残しておきます。それにしてもやたらとインストール方法ばかり書いてあるブログになってますね。

環境はFreeBSD 6.0-RELEASE。   続きを読む

March 18, 2006

RAID1 + FreeBSD6.0-RELEASE + Samba3でファイルサーバをリプレース

常用しているファイルサーバのCPUはMMX200MHz。97年製。さすがに遅く利用しづらくなってきたので、別のPCに役割を移行することにしました。ついでにRAIDカード3Ware 8006-2LPでRAID1を構築することにします。初めてのRAIDです。

RAID1の構築
PCIバスにRAIDカード挿し、HDDを二本繋いで起動。起動時にalt+3でコンフィグに入ります。ドライバなどは特に必要なし。
※二本繋がないとRAID1に設定できませんでした。

手順
(1) PC起動中にAlt + 3で3BM(3ware BIOS Manager)に入る
(2) Available Drivesに表示されている二台をEnterで選択して「Create Array」
(3) 「Select RAID configuration」を「RAID 1」にして「OK」
(4) F8でexit

これで自動的に初期化が始まるようです。


FreeBSD6.0-RELEASEのインストール

次にFreeBSD6.0-RELEASEのインストール。ISOイメージが楽なのでダウンロードしてCD-Rに焼きます。

ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/6.0/6.0-RELEASE-i386-disc1.iso
ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/6.0/6.0-RELEASE-i386-disc2.iso

DISK1をCD-ROM bootしてさくさくインストール。毎回思うのですがFreeBSDのインストーラはわかりづらいです。「Commit」を選ぶところ、以前はなかったような気が・・・。またFreeBSD6.0は、インストール完了した後に設定をし直せたりもするようですが、これが非常にわからづらかったです。何故終わった後に再度fdiskの画面が出るのだろうと悩んでしまいました。インストールは終了しているのでこの画面はExitで抜けてリブートしてしまって良いようです。

standardで、DistributionsはDeveloperとKern-Developerのみ。当然Xなど入れません。SSHはenable。パッケージ関連を選択したらDisk1/Disk2を交互に入れ直すような指示が出たので面倒になって何も入れませんでした。選択したのは、そのくらい。

次に、最新のportsツリーを持ってくるための作業です。
まずcvsup-without-gui を入れます
# pkg_add -r cvsup-without-gui


最も近いcvsupサーバを探す
# pkg_add -r fastest_cvsup (Perl5.8.7入っちゃったΣ(゚Д゚))
# fastest_cvsup -c jp
>> Querying servers in countries: jp
(snip)
>> Speed Daemons:
- 1st: cvsup3.jp.freebsd.org
- 2nd: cvsup2.jp.freebsd.org
- 3rd: cvsup5.jp.freebsd.org


ports-supfileをコピーして、一行だけ編集。
# mkdir /usr/local/etc/cvsup
# cp /usr/share/examples/cvsup/ports-supfile /usr/local/etc/cvsup/
# vi /usr/local/etc/cvsup/ports-supfile
*default host=cvsup3.jp.FreeBSD.org


portsの更新
# cvsup -g -L 2 -s /usr/local/etc/cvsup/ports-supfile


時計合わせ。
# vi /etc/rc.conf (下記追加)
ntpdate_enable="YES"
ntpdate_flags="-s -b 133.100.9.2"


※参考
http://iris.homeunix.net/yayoi/freebsd/inst/cvsup.asp
http://www.doblog.com/weblog/myblog/12826/2264670#2264670
http://www.fkimura.com/diary/?date=20040727
http://www.f-bell.net/FreeBSD/cvsup.html


RAIDの設定

3wareのRAIDカードRAIDを構築した場合、スリーウェア・ディスク・マネージャ(3DM2 & tw_cli)という管理ツールを使うことができます。

メールで通知させたいので、事前にMTAをいれておきます。

postfixのインストール
# cd /usr/ports/mail/postfix21/
# make install
# vi /usr/local/etc/postfix/main.cf
mydomain = $myhostname


3dm2のセットアップ。
# cd /usr/ports/sysutils/3dm
# make install

# vi /etc/rc.conf (下記追加)
twdm2_enable="YES"


起動
# /usr/local/etc/rc.d/3dm2.sh start


https://192.168.0.200:888/
でブラウザから管理ツールに入れる用になります。Administratorの初期パスワードは3ware。

状態監視メールの設定
https://192.168.0.200:888/
→3DM 2 Settings (設定を下記に変更)

Send E-Mail : Enabled
Notify on : INFO
Sender : 3dm2
Recipient : 携帯メールアドレス
Mail Server : localhost

→Save E-mail Settings
→Send Test Message
→キタ━━(゚∀゚)━━

これで何かあった時にメールが送信されるようになります。便利です♪

※ディスク破損時の交換を想定して、稼働中にHDDを一本抜いてみましたが問題なし。
下記手順でRebuildできました。
→Management
→Maintenace
→異常発生しているドライブを[Remove Drive]
→Rescan Controller
→Availabe DrivesにRemoveしたドライブが表示される。チェック。Unit Maintenanceのものにもチェック
→Rebuild Unit


tw_cliのセットアップ
# cd /usr/ports/sysutils/tw_cli
# make install

# tw_cli
//box> info c0

Unit UnitType Status %Cmpl Stripe Size(GB) Cache AVerify IgnECC
------------------------------------------------------------------------------
u0 RAID-1 REBUILDING 25 - 232.885 ON - -

Port Status Unit Size Blocks Serial
---------------------------------------------------------------
p0 OK u0 232.88 GB 488397168 VDB41BT4D0YEUC
p1 DEGRADED u0 232.88 GB 488397168 VDB41AT4C1U0WA

//box> quit

こんな感じでコンソールからも状態確認、verifyなどができます。上記はRebuild中。

※参考
http://japan.3ware.com/support/userdocumentation.asp
http://www.clustcom.com/content/view/206/


Samba3のインストール

Sambaの前にEUCJP-MSを使うためにlibiconvをWITH_EXTRA_PATCHES付きで入れておきます。
# cd /usr/ports/converters/libiconv/
# make -DWITH_EXTRA_PATCHES install
# iconv -l | grep MS
CP1250 MS-EE WINDOWS-1250
CP1251 MS-CYRL WINDOWS-1251
CP1252 MS-ANSI WINDOWS-1252
CP1253 MS-GREEK WINDOWS-1253
CP1254 MS-TURK WINDOWS-1254
CP1255 MS-HEBR WINDOWS-1255
CP1256 MS-ARAB WINDOWS-1256
ARMSCII-8
EUC-JP-MS EUCJP-MS EUCJP-OPEN EUCJP-WIN
MS_KANJI SHIFT-JIS SHIFT_JIS SJIS CSSHIFTJIS
CP936 GBK MS936 WINDOWS-936


Samba 3.0.21bのインストール
※インストール時のオプション設定の中にあるMySQLを有効にしたら50分もかかりました。
# cd /usr/ports/net/samba3/
# make install
# vi /etc/rc.conf (下記追加)
samba_enable="YES"


smb.confの修正
# vi /usr/local/etc/smb.conf
※以下のようにしました。
[global]
workgroup = MYWORKGROUP
server string = Samba Server
security = user
load printers = yes
log file = /var/log/samba/log.%m
max log size = 50
socket options = TCP_NODELAY
dns proxy = no
# 20060318
security = share # パスワードなしのアクセスを許可
hosts allow = 192.168.0. 127.
display charset = EUCJP-MS
unix charset = EUCJP-MS
dos charset = CP932

[public]
comment = Public Space
path = /home/public
public = yes
writable = yes

[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes

こちらによれば、

Windows側のCP932コードが、EUC-JPコードに変換されると、いくつかの文字で異なるコードナンバーに変換されてしまう。EUCJP-MSならこういった問題は起きない

とのことなのでEUCJP-MSを使用することにしました。実際試してみたところ、EUC-JPでは(株)などのNEC特殊文字が文字化
けしました。EUCJP-MSにすると、WinXP, OSXどちらからも正常に読み書き可能でした。

ファイル格納領域作成
# mkdir /home/public
# chown -R nobody:nobody /home/public/


起動
# /usr/local/etc/rc.d/samba.sh start


SWATの起動
# vi /etc/inetd.conf
※下記行のコメントを外す。
swat stream tcp nowait/400 root /usr/local/sbin/swat swat


inetdが立ち上がっていなかったので起動。(立ち上がってる場合はkill- HUP)
# /usr/sbin/inetd


port901にアクセス。rootのパスワードでログインします。
http://192.168.0.200:901/



参考
http://macmini.ameblo.jp/entry-4a742405751677724469f0bad5717db8.html
http://www.fkimura.com/samba1.html
http://www.fmp.jp/~guu/net/samba.html
http://bakuretsu.atso-net.jp/bakuretsu/freebsd/samba3.html
http://www.abk.nu/~nabe/document/samba3.htm#2.1


ProFTPDのインストール
おまけ。

# cd /usr/ports/ftp/proftpd
# make install

vi # /etc/rc.conf
proftpd_enable="YES"

# /usr/local/etc/rc.d/proftpd.sh start


こんな感じでRAIDが構築できました。Sabma2の時に悩まされた文字化け問題も解決してすっきり。大掃除が終わったような気分です。(´∇`)

  

February 19, 2006

FreeBSDでiTunesサーバを作ってみた

前から気になっていた「【コラム】OS X ハッキング! 第100回 LinuxをiTunesサーバに仕立てる (MYCOM PC WEB)」を見ながらiTunesサーバを作ってみることにしました。   続きを読む

November 04, 2005

JavaのCMS「OpenCms」をインストールしてみた

折角JSP/Servletの環境を作ったので何かアプリを動かしてみようと思い探してみたらOpenCmsなるCMSを発見。これを動かしてみることにしました。JSP/Servletでフリーのアプリって少ないような気がします。何か、日本語化されている有名なアプリはないのでしょうか。単に探し方が悪いだけなのかもしれませんが。
   続きを読む

October 30, 2005

OSXでJSP/Servletを動かしてみた

なんとなくJavaで遊んでみました。
メインUNIXマシン(MMX200)は遊びづらくなってきたので今回はmac miniです。MMX200だと、コンパイルとか遅くて眠くなるのです。

Javaはさっぱりわからないので少し調べてみたところ、JSP/Servletの開発に必要な環境は主に下記のようなので順を追って試してみることにしました。(Eclipseはなくても動くので今回はパス。)

  1. JDK (コンパイラ、ライブラリ等)

  2. Tomcat (Webアプリケーションサーバ)

  3. Eclipse (GUIベースの開発ツール)



Hello World (JDK)

しかしまずJavaを知らないので、取りあえずお約束のHellow Worldを書いてJDKで動かしてみました。
OSXには最初からJDKが入っているのでインストールの必要はなし。

まずコードを書いて
# vi helloworld.java
class HelloWorld{
static public void main(String args[]){
System.out.println("Hello World!");
}
}


コンパイルして実行、と。 *1
# javac helloworld.java
# java HelloWorld
Hello World!


*1 実行時に# java HelloWorld.classと打ったら「Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld/class」のようにクラスへのパスが通ってないとさんざん怒られました。拡張子は不要らしい。というかドットはパッケージの階層構造を意味するらしい。このことにしばらく気がつかず困りました・・・。
カレントはデフォルトのクラスパスなので明示的にパス指定する必要はないようです。あえて指定する場合は環境変数CLASSPATHにパス(この場合は「.」)を通せばいいらしい。また、「java -cp . HelloWorld」のようにオプションで指定することもできる、と。


Tomcatのインストール

次にTomcatをインストール。*2

# cd /usr/local/src/
# wget http://www.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28.tar.gz
# tar zxvf jakarta-tomcat-5.0.28.tar.gz -C /usr/local/
# cd /usr/local/
# ln -s jakarta-tomcat-5.0.28 tomcat5

これでインストールはおしまい。

Tomcatの起動。*3
# setenv JAVA_HOME /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/
# /usr/local/tomcat5/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat5
Using CATALINA_HOME: /usr/local/tomcat5
Using CATALINA_TMPDIR: /usr/local/tomcat5/temp
Using JRE_HOME: /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/


プロセス確認
# ps -auxw | grep Java
root 1868 0.1 5.7 283072 30088 p1 S 8:15PM 0:10.03 /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java (以下略)
root 1872 0.0 0.0 8772 8 p1 R+ 8:15PM 0:00.00 grep Java


ブラウザでアクセスして確認。不細工なネコが表示されたらOK。
http://127.0.0.1:8080/


終了は
#/usr/local/tomcat5/bin/shutdown.sh



*2 当初、最新版のv5.5.12をインストールしたら
This release of Apache Tomcat was packaged to run on J2SE 5.0
or later. It can be run on earlier JVMs by downloading and
installing a compatibility package from the Apache Tomcat
binary download page.

起動しませんでした。Tomcat5.5はJ2SE5以上でないとダメらしい。現段階ではどうでもいいので5.0系を使いました。

*3 環境変数を指定せずに起動したら
# /usr/local/tomcat5/bin/startup.sh
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program

怒られました。


Hello World (JSP)

さて次はJSPでWebアプリケーションを作成してみます。
J2EEではWebアプリケーションのディレクトリ構成が決まっているようなので作法に従ってディレクトリを作成。
今回はデフォルトのwebappsの下に作成しました。

# cd /usr/local/tomcat5/webapps
# mkdir MyApp
# mkdir MyApp/WEB-INF
# mkdir MyApp/WEB-INF/classes


次にWebアプリケーションのコンテキスト定義ファイルを作成します。
# vi /usr/local/tomcat5/conf/Catalina/localhost/MyApp.xml
<Context path="/jsp-app" docBase="MyApp" debug="0" reloadable="true" />

URIはここで指定。reloadable="true"にしておけばサーブレット修正時にサーバを再起動する必要がなくなるそうです。

次にWebアプリケーションの設定ファイルであるweb.xmlを作成。適当です。
# cd MyApp/WEB-INF
# vi web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
</web-app>


表示するjspファイルを作成。
# cd ..
# vi helloworld.jsp
<html>
<head>
<title>Hello World!</title>
</head>
<body>
<%@page import="java.util.Date" %>
<%
Date time = new Date();
String s= "Hello World";
out.println(s);
%>
<address><%= time %></address>
</body>
</html>


Tomcat再起動
# /usr/local/tomcat5/bin/shutdown.sh
# /usr/local/tomcat5/bin/startup.sh


ブラウザで確認。
http://127.0.0.1:8080/jsp-app/helloworld.jsp



Hello World (Servlet)

最後にServletも動かしてみることに。ServletからWebに直接出力というのはちょっと微妙ですが。

まずソースを書く。(ここからもらいました。)
# cd /usr/local/tomcat5/webapps
# vi HelloWorldServlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorldServlet extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// ContentTypeを設定
response.setContentType("text/html; charset=Shift_JIS");
// 出力用PrintWriterを取得
PrintWriter out = response.getWriter();
// 出力
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World Servlet</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello World");
out.println("</body>");
out.println("</html>");
}
}


コンパイル。なにやらいろいろパスを通さないといけないようです。
# javac -d WEB-INF/classes -classpath /usr/local/tomcat5/common/lib/servlet-api.jar HelloWorldServlet.java


web.xmlに下記を追加。
# vi WEB-INF/web.xml
<servlet>
<servlet-name>MyHello1</servlet-name>
<servlet-class>HelloWorldServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyHello1</servlet-name>
<url-pattern>/helloservlet</url-pattern>
</servlet-mapping>


Tomcat再起動
# /usr/local/tomcat5/bin/shutdown.sh
# /usr/local/tomcat5/bin/startup.sh


ブラウザで確認。
http://127.0.0.1:8080/jsp-app/helloservlet




というわけで駆け足でHello Worldを試してみたのでした。

参考URL
http://www.ayaori.net/software/osx/tomcat5Primer/
http://www.hellohiro.com/
  

October 12, 2005

Mac OSXのVNCクライアントとOpenSSHポートフォワードを使ってWindowsを遠隔操作してみた

外出先のWindowsから自宅PCをVNCで操作するのはとっても便利なのですが、遠隔地のOSXからも自宅のVNCサーバにアクセスしたくなったのでやってみました。理由は単純。Windows(VNCサーバ機)のひかるにアクセスして家計簿を付けたいのです。ただそれだけ。

手順はこんな感じ。


  1. 操作対象PCのVNCサーバを起動しておく。(RealVNC)。ポート番号はここでは5900。

  2. ターミナルから自宅のSSHサーバに接続し、VNCサーバのローカルIP(192.168.0.250)に向けてトンネルを掘る。(ここではOSXのローカルポート5900を自宅VNCサーバの5900にフォワードしてます。
    自宅SSHサーバのホストアドレスが「gate.example.com」ユーザIDが「myuser」だとするとこんな感じ。
    # ssh -l myuser -L 5900:192.168.0.250:5900 gate.example.com

    ※SSH -L <ローカルポート番号>:<転送先ホスト>:<転送先ポート番号> <リモートホスト>

  3. OSXのVNCクライアントChicken of the VNCをインストールして起動。Hostに「localhost:5900」、PasswordにVNCサーバのパスワードを入力して「Connect」



これで遠隔地のOSXから自宅のWindowsを操作することができます。動作はすごく遅いけども一応便利・・・かな。
ちなみにポートを3389にすればさくっとリモートデスクトップが使えることでしょう。  

June 14, 2005

PHP5のインストール

p2を使おうと思ったらサーバにPHPが入っていなかったのでインストールしました。
   続きを読む