2010年10月3日日曜日

Netbeans 文字化け on Ubuntu 10.04

Ubuntu 10.04にインストールしたNetbeans 6.9.1の文字が一部「四角い図形」で表示されてしまう問題について
原因は、インストールしたJDKに日本語フォントが入っていなかったため

対策は次の通り
1.フォントを格納するフォルダを作成
# sudo mkdir -p $JAVA_HOME/jre/lib/fonts/fallback

2.フォントをコピー
# sudo cp /ussr/share/fonts/truetype/takako/* $JAVA_HOME/jre/lib/fonts/fallback/

フォントは、IPAフォントなどtakakoフォントではなくてもよい

2010年7月27日火曜日

MAMPへのSymfonyインストール

Symfony 2を勉強するにあたり、Symfony 1.xについても知りたくなり環境を構築

開発環境としては、NetBeansがバージョン6.8でSymfony 1.xに完全に対応したことを知ったので、NetBeansで試すことにした

まず、今回はMAMPでSymfony 1.xを実行する為の環境構築の手順について記載する

Symfony 1.xは、通常、pearを用いてインストールするようなので、それに従いインストールを実施

・pearへのsymfonyサイトの登録とインストール
# /Applications/MAMP/bin/php5.3/bin/pear channel-discover pear.symfony-project.com
# /Applications/MAMP/bin/php5.3/bin/pear install symfony/symfony

ここで、pearを実行しようとすると、command not foundと言うエラーが発生し、実行することができなかった
これは、pearファイルに実行する権限が付与されていないことが、原因だった
ターミナルで、次のコマンドを実行することで解決した
# chmod a+x /Applications/MAMP/bin/php5.3/bin/*

以上で、Symfonyはインストールが完了する
symfonyがインストールされるディレクトリは、「/Applications/MAMP/bin/php5/」の下になる

eclipse with PDT for mac

PHPの開発環境として、eclipseとnetbeansを準備した

netbeansは、特に追加で作業することがないため、特に記載しない

eclipseは、PHP開発用のプラグインPDTをインストールする必要があるため、多少記載する

インストールした環境は、
  • OS:Mac OS X 10.6.4
  • eclipse:3.5.2
特に難しいことはなく、「Help > Install New Software...」を選択し、「Work with:」に「--All Available--」を選択する

そして、「Programming Languages > PHP Development Tools (PDT) SDK」を選択して、「Next」を選択していくと、インストールできる

2010年7月26日月曜日

Symfony 2 Sandboxの構造

Symfony 2のSandboxの構造についてみていく

まず、sandboxをここからダウンロードして展開すると、次のファイル/フォルダが含まれている

  • LICENSE:Symfony 2のライセンス形態
  • README:Symfony 2について書かれている。Symfony 2のサイトやチュートリアルのURLも書かれている
  • hello (dir):サンプルが置かれたディレクトリ
  • src (dir):利用するライブラリやソースが含まれるディレクトリ
  • web (dir):Symfony 2のwebルートディレクトリ
一通りチュートリアルを読んでみたが、Symfony 2は何らかの構成ファイルを編集して、それを満たすソースを生成するようなフレームワークとは違う感じ
Symfony 1.xを使ったことがないので、正確に比較はできないが、ざっとsymfony徹底攻略 [PHP徹底攻略シリーズ]を眺めた印象では、Symfony 1.xでも同じような利用法のようだ

2010年7月25日日曜日

Symfony 2 on MAMP

MAMPへSymfony 2の環境を構築
Symfony 2からSandboxをダウンロードし、MAMPのhtdocsフォルダ(/Applications/MAMP/htdocs)へ解凍


設置環境が要件を満たしているかを、http://localhost/sandbox/web/check.php にアクセスしてチェック


MAMPのバージョンが1.9の現在、何もXAMPの設定を変更しないと、チェック結果は次のようになった
sandboxのcheck.phpの結果
まず、Mandatory requirements(必須要件)については、全ての要件を満たしていることがわかる
次に、Optional Checksは、short_open_tagとmagic_quotes_gpcをoffにするようにと、警告が出た

check.phpの上部に書かれているパスにあるphp.iniを開いて、short_open_tag = OnをOffへ変更し、magic_quotes_gpcは書かれていなかったため、新たにmagic_quotes_gpc = Offを追記すると、チェック結果が全てOKになった


参考サイト

MAMPインストール

macにXAMPPをインストールして、Symfony 2.0を試す予定だったが、PHPのバージョンがSymfony 2.0が動作する5.3.2を満たさず、XAMPP内でPHPだけをバージョンアップする方法がわからなかったので断念

その代わりに、MAMPをインストール
MAMPとは、XAMPPとほぼ同じアプリケーションで、macのローカルにAMP環境を構築することができる

MAMPには、有料のMAMP proというエディションもあるが、ローカルで開発環境を構築するだけなら、MAMPで十分だった

インストール後は、apacheとmysqlのポートの設定を独自のポート番号から、通常のポート番号へ変更
変更手順は、
1./Application/MAMP/MAMP.appを起動
MAMPの管理画面
2.「環境設定」を選択

MAMP環境設定
3.「ApacheとMySQLの標準ポートに設定」を選択
ポート番号が、Apache:80、MySQL:3306に変更されるので、「OK」を選択してサービスを再起動すれば設定完了

macbookへの移行

開発環境をmacbookへ移行

これまで利用していたWindowsはハードウェアのトラブルが多かったため、利用頻度を減らしてmacへ移行することにした

ハードウェアは、購入時についていた1年間の保証期間内に2度のハードウェア交換修理した
さらに、ハードウェア交換が原因かはわからないが、修理後の端末ではフリーズすることが多々あり、耐えきれず問い合わせるとハードウェアの異常チェック・コマンドを実行させられ、エラーが検出されないと、OSをリカバーしてくださいと言われた

使い続ける気になれず、昨年、購入したmacbookをメインにすることにした


今回は開発環境の構築

Symfony 2.0を試しに利用してみたいと考えていたため、実行環境をmacへインストール
Apacheは、共有機能を利用して実行することもできるが、今回は、いろいろと簡単に済ませる為、XAMPPを利用することにした

ここからXAMPP for macをダウンロードし、起動したインストーラでインストールすれば完了
コントロールパネル(XAMPP Control.app)を起動して、ApacheとMySQLを起動することを確認し、http://localhost/でアクセスできることを確認した

ただ、現在のXAMPPの最新版(1.7.3)では、PHPのバージョンが5.3.1であり、Symfony 2.0が対応している5.3.2は実行できない

次回、XAMPPのPHPをバージョンアップする

2010年5月29日土曜日

Netbeans 6.8でUML作成

Netbeans 6.8でUMLを作成するプラグインを調査
6.7までは、UMLを作成するプラグインが公開されたようで、6.7以前の情報はよく見つかる
手順としては、「ツール>プラグイン」で利用可能なプラグインの中から、UMLを選択すれば簡単に追加可能

ただ、6.8以降は「ツール>プラグイン」の設定で、6.7のプラグインが公開されているサイト(http://updates.netbeans.org/netbeans/updates/6.7/uc/beta/beta/catalog.xml.gz)を手動で追加して、追加することが可能になる

しかし、6.8にUMLをこの方法で無理やりインストールしても、UMLを作成したりJavaをエクスポートしたりすることは可能だが、一度、Netbeansを再起動すると作成したUMLファイルが消えてしまうという問題が発生した

そのため、(ほかにも問題はあるかもしれないが、)6.8では公開されていないのだと思われる

2010年5月8日土曜日

MySQLサーバにJavaでアクセス

MySQLサーバに外部のサーバ(クライアント)からJavaでアクセスする方法

Javaのライブラリには、MySQLが公式に提供しているMySQL Connector/Jを利用
ダウンロードはここから
現在の最新版のバージョンは5.1.12

ダウンロードした圧縮ファイルを解凍し、中に含まれるJARファイル(mysql-connector-java-5.1.12-bin.jar)をCLASS_PATHが通ったディレクトリにコピーする

ソースコードは、ダウンロードしたライブラリに含まれるマニュアルをそのまま利用すれば、簡単に作成することができる


今回、問題になったのは、外部のMySQLサーバへアクセスする時に、接続が拒否されることであったが、以下の2段階のアプローチで解決した

1.MySQLサーバは、Ubuntu 10.04上で動作しており、最初はUbuntuのポート開放の設定を変更したが、解決しなかった(以下は試みた手順メモ)
外部のサーバから、nmapコマンドを用いて、Javaでアクセスしようとしたクライアントから、MySQLサーバが動作するUbuntuのポート開放をチェックしたところ、80番のみが開放されており、MySQLサーバがデフォルトで利用する3306番は開放されていなかった
# sudo nmap -sTV(TCPをチェック) 192.168.1.10(MySQLサーバアドレス) -p 21-100(チェックするポートの範囲(この場合21番から100番をチェック))

nmapのレスポンスは、ポート番号と状態、サービス名が返され、80番は状態がopen、サービス名がapacheだった
しかし、3306番は状態がclosedだった

そのため、ufwを用いて手動でポートの開放を設定するようにした
ufwを有効にする
# sudo ufw enable
開放するポート番号を設定する(TCPとUDPは別々に設定しなければならない)
# sudo ufw allow 3306/tcp

しかし、この方法では接続できるようにならなかった

2.MySQLサーバの設定ファイルの変更
MySQLサーバの設定ファイル(/etc/mysql/my.cnf)にあるbind-addressを無効にすることで、解決した
bind-address = 127.0.0.1 -> #bind-address = 127.0.0.1

2010年5月4日火曜日

apacheサーバへのdjangoプロジェクト設置

Ubuntu 10.04上で動作するApache2にdjangoで作成したWebサイトを設置する手順

必要なモジュールのインストールについてはこちら

前準備
プロジェクト
・プロジェクト名:djprj
・パス:/var/www/djprj

プロジェクト内アプリケーション
・アプリケーション名:djapp
・パス:/var/www/djprj/djapp

設定手順
1.設定ファイルのコピー
# sudo /etc/apache2/sites-enabled/default /etc/apache2/sites-enabled/default100504

2.設定ファイル(default100504)に次の内容を追加
追加場所は、「ErrorLog ・・・」の直前
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE mysite.settings
PythonOption django.root /djprj
PythonDebug On
PythonPath "['/var/www/djprj/djapp/', '/var/www/'] + sys.path"
3.読み込む設定ファイルの変更
# sudo a2dissite default
# sudo a2ensite default100504

4.Apache2の再起動
# sudo /etc/init.d/apache2 restart


参考サイト

2010年5月3日月曜日

McAfee、G Data Internetsecurity 2010評価

これまでデスクトップPCで利用していたウイルスバスターが有効期限が終了し、かつ、ライセンスを更新するよりも新規で購入したほうが安く入手可能なため、他社製品への乗り換えも視野に入れて検討中

まず、新しく購入したノートPCに付属のMcAfeeを利用していたが、現在はG Data InternetSecurity 2010を評価期間の間だけ利用中

McAfeeは、ノートPCとの相性が悪かったのか、ノートPCをフリーズさせてしまうことが多々あり、1年分のライセンスが付属ソフトウェアに含まれていたが利用を中止した

G Data InternetSecurity 2010は、検出性能は非常に高いことは一目瞭然であるが、その分、検索速度が遅いのも一目瞭然である

1メールをウイルスチェックしてダウンロードするまでに数秒かかり、毎日数十個のメールを受信するため、メールを全て受信するために、いつも数分待たされる
(メールを受信している間に他のことをするため、それほど害はないが、少し不愉快である)

検索精度について、誤判断が多いことが問題である
Amazonから送られてくるキャンペーンの情報メールなども「スパムの可能性」があるメールと判断してしまう点は問題である

以上の理由で、G Data InternetSecurity 2010は、評価期間が終了すると、利用も終了する

2010年5月2日日曜日

Djangoの開発環境

Pythonのフレームワークの一つであるDjangoを用いてWebサイトの作成を開始するが、
なかなか、適切な開発環境(IDE)がない

eclipseやNetBeansを用いても、Pythonのコード自体は書くことができるが、
django-admin.pyのコマンドの実行やデータベースのSyncは、
コンソールから行わなければならない

現状では、NetBeans+コンソールか、emacs+コンソールで作成していくが、
いずれは全てを簡単にWebサイトを作成するフレームワーク実装環境を作成するつもり

2010年4月30日金曜日

NetBeans 6.8を簡単にUbuntu 10.04へインストール

前回のインストール方法より簡単に、NetBeansをインストール
ただし、バージョンは6.9Betaではなく6.8

以下のコマンドを実行
# sudo apt-get install netbeans

必要なモジュールも自動的に選択されてインストールが完了する

NetBeans 6.9 Beta on Ubuntu

Ubuntu 10.04にNetBeans 6.9 BetaをPythonの開発環境としてインストール

1.JDKをここからダウンロード
現在の最新はJDK6 Update 20

2.JDKを展開
# chmod a+x jdk-6u20-linux-i586.bin
# ./jdk-6u20-linux-i586.bin
(途中でライセンスに同意が必要)

3.展開したJDKを設置
# sudo mv jdk-1.6.0_20/ /opt/
# cd /opt/
# sudo ln -s jdk-1.6.0_20 jdk6-current

4.パスを通す(~/.bashrcを編集)
~/.bashrcの最後に以下を追加
JAVA_HOME=/opt/jdk6-current/
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME
export PATH
# source ~/.bashrc

5.NetBeans 6.9 Betaをここからダウンロード

6.実行できるようにアクセス権を変更
# chmod a+x netbeans-6.9beta-ml-linux.sh

7.GUIインストーラが立ち上がるので、インストールを実行

LAMP on Ubuntu

Ubuntu 10.04 LTSにLAMP環境を構築

スクリプト言語には、PHP 5とPythonをインストール
MySQLのGUIのためにPHP 5をインストールし、Webサイトの構築のためには、Pythonを用いる。

手順は以下の通り

1.apache2のインストール
# sudo apt-get install apache2

2.PHP 5、Pythonのインストール
# sudo apt-get install php5 libapache2-mod-php python libapache2-mod-python

3.MySQLのインストール
# sudo apt-get install mysql-server
(MySQLインストール中に、rootパスワードの設定が要求される)

4.MySQL操作用モジュールのインストール
# sudo apt-get install php5-mysql python-mysqldb

5.phpMyAdminで用いるPHPライブラリのインストール
# sudo apt-get install php5-mcrypt

6.apache2、mysqlの再起動
# sudo /etc/init.d/apache2 restart
# sudo /etc/init.d/mysql restart

7.phpMyAdminのダウンロード
ここから3.x系をダウンロード
(現在の最新版は3.3.2)

8./var/www/以下にphpMyAdminを展開
# cd /var/www/
# sudo tar xvzf ~/phpMyAdmin-3.2.2-all-languages.tar.gz

9.ディレクトリ名をphpadminへリネーム
# sudo mv phpMyAdmin-3.2.2-all-languages/ phpadmin

10.ブラウザで下記のURLへアクセス
http://localhost/phpadmin/

VMware Toolsインストールエラー

Windows上で動作するVMware Player 3.0.1にUbuntu 10.04をインストール
その後、VMware ToolsをそのUbuntu 10.04にインストールしようとしたところ、「簡易インストールが進行中の場合、VMware Toolsのインストールを手動で開始できません」というエラーが発生

原因は、VMのフロッピーデバイスにautoinst.flpが割り当てられていたこと

VMシャットダウン後に、フロッピーデバイスをVMの設定から削除することで解決

2010年4月29日木曜日

python文字コードエラー

pythonで日本語がコード内に含まれるとき、Syntax Errorが発生
内容は、「Non-ASCII character '¥x83' in file」でコード内の文字がASCIIでないというエラー

コードの1行目に、
#! coding: UTF-8
と入力して、日本語がUTF-8であることを明記することで解決