Office SixPass オフィスシックスパス    | 札幌で、Web制作・ホームページ制作、CMS開発やサーバー構築、SEO対策など幅広く活動していますSOHOです。

TAG | 文字コード

ようやく、サーバーという名前に相応しい状態になったFedora11

今回はLAMP環境の構築をしました。ubuntuのLAMP環境構築のページはググれば沢山出てくるのですが、Fedora11でのサイトが中々見つからなかったので、覚書程度に残しておきます。

まずは、Apacheの設定。GUIで行きました。「ソフトウェアの追加と削除」からApacheを検索して、インストールする、だけ。ドキュメントルートは、「/var/www/html/」になります。html配下にディレクトリとかを別ユーザーから操作する時は、パーミッションを変えてあげましょう。「chmod 777 /var/www/html」とか。作成したら、711あたりに戻しておきましょう。http://localhost/でTestPageが表示されればOKです。

次にPHP。これもGUIで行きましょう。「ソフトウェアの追加と削除」からPHPを検索して、インストールする、だけ。先ほどのApacheのドキュメントルートに、次のような内容でコードを書き、ドキュメントルートに配置しましょう。

<?php
phpinfo();
?>

これを、index.phpと命名し、ドキュメントルート直下に置きましょう。ブラウザでhttp://localhost/PHPの情報がずら~っと出てくればOK。

最後にMySQL。これもGUIで行きましょう。「ソフトウェアの追加と削除」からMySQLを検索して、インストールする。これにはちょこっと文字コードの設定をしてあげましょう。vi/etc/my.cnfを開きます。[mysqld]の項目の一番下の「old_passwords=1」の下に、以下の文を書きましょう。因みにviの使い方は、「i」で挿入。「:w」で保存。「:q」で閉じる、です。

default-character-set=utf8

これで、デフォルトの文字コードがUTF-8になります。あとはクライアントの文字コードも追加しましょう。以下の文を追加します。

[mysql]
default-character-set=utf8

MySQLを起動しましょう。

# /etc/rc.d/init.d/mysqld start

これで起動します。PHPと関連付いているか、次のようなPHPファイルを作成し、DBに接続出来るか確認します。

<?php
mysql_connect(“localhost”,”root”,”") or die(“Error MySQL);
echo “Success MySQL”;
?>

これをmysql.phpとかに命名して、ドキュメントルートに置きましょう。http://localhost/mysql.phpを叩きます。Success MySQLと表示されれば接続OK!Error MySQLの場合は、上記の手順のどこかが間違っているか、MySQLのユーザー及びrootのパスワードを先に作っちゃったか、です。念のため、mysql_connect(“localhost:3306~でも試してみましょう。3306はMySQLのデフォルトのポート番号です。

ここまで出来ればLAMP環境の完成です。最後にMySQLの自動起動設定をしてみましょう。

# chkconfig mysqld on

これで自動起動になります。ubuntuよりも簡単かもしれませんね。GUIベースでの説明ですいません・・・CUIが苦手なもので・・・

でわ。

@tak

· · · · · · · · ·

新しく、プロジェクト設計をするときに、文字コードで悩みませんか?
僕は、EUC-JPをずっと使用していたので、EUC-JP派だったのですが、Linuxを使い始めるようになって結局はUTF-8で作っちゃうことが多くなりました。

UTF-8って何かと使いづらくて、でもいまやWeb標準ですよね?
あるSEさんから聞いた話、UTF-8って今後なくなるらしい、という話をちらほら聞きました。
文字コード戦争が起こっているらしいです。

Do-Jaで有名なdocomoのモバイルサイトエミュレータも、メジャーアップデートでUTF-8をいち早く辞めた一つらしいです。
モバイルにはShift-JISという日本が誇る、究極の負の遺産がありますよね。
docomoはASCIIにしたらしいですが、どういう意味なんでしょう?

でも、Webクリエイター達は、未だに、いや結局はUTF-8を使うんです。
(X)HTMLもCSSもPHPもMySQLもみ~んなUTF-8。

表側の文字コードの標準が変わった時、裏側のScriptやDatabaseはどうするんでしょうね?
今年リリース予定のPHP6も多分UTF-8でしょうね。

文字コード戦争、どうやることやら。
AdobeCSをお使いのWebクリエイターさん達は、文字コード標準が今後変わった時、また新しいCSを買わなくちゃいけなくなるんですかね。
あ~怖い怖い。

でわ。

@tak

· · ·

自宅にBTSを立てたくて、PHPで作られているMantisか、Pythonで作られているTracのどちらを導入するか、非常に迷いました。

会社では、PHPしか使わないので、当然のごとくMantisが入っています。

サブバージョンも、TortoiseSVNが使われています。これは非常に使いやすいSubVersionです。PHPへの融合性もバッチリです。

Tracはデフォルトで、サブバージョンや、ガントチャート、wikiも含まれているのがとても魅力的でした。ただ・・・

Pythonなのです!

PythonはこれからPHP6が出てくる頃には、もう廃れているスクリプトになるんじゃないかと、僕は思っています。TracもPythonなので、DBは当然SQLite。MySQLではないのです。

ここら辺が非常に迷いました。

PHP+MySQLの環境に慣れている僕としては、Python+SQLiteの構成に違和感を覚えてなりませんでした。特にDB。MySQLはあまりにも使いややすすぎるし、PHPとの互換性が完璧と言っていいほどパーフェクト。SQLiteはあまり知りませんが、Pythonとの調和性は大丈夫なのか?と不安を覚え、GUIが魅力的だったTracを辞め、Mantisにしました。

次にぶち当たった難題は、Mantisのバージョンをどれにするか?

僕は、最初なんの迷いもなく、最新のMantis1.1.8を入れました・・・

僕の家には、Linux系サーバーはあるのですが、まだ稼動していないので、WindowsでXAMPPで入れようと思っていました。XAMPPのMySQLは文字コードEUC。僕の持っているPHP資産もEUC。

Mantisは1.1.0以降、文字コードが「UTF-8」で作られています。これは非常に問題が多く、文字化け問題が多発しています。Mantis1.1.8をインストールした僕は、まずMySQLのデフォルトCharcterSetをUTF-8に変えました。しかし、文字化け。

色々ググりましたが、ネットはデタラメばかり!

MantisはDBに書き込みにいくときに「S-JIS」で書きにいく!と書かれているサイトがググった検索結果の1位にありましたが、嘘です。バージョンによって違います。当然、Mantis1.1.8は「UTF-8」で書きにいきます。XAMPPの文字コードを全部「UTF-8」に変えると、僕の持っているPHP資産が使えなくなる・・・という懸念点から、思い切ってMantisのバージョンを落としました。Mantis1.0.3まで落としてインストールすると、なんと文字コードが「UTF-8」と「EUC-JP」と「S-JIS」から選べます。

そうなのです。Mantis1.1.0以降は問答無用でUTF-8から変えられません。

Mantis1.0.3でEUCで問題なくインストール、実行、書き込みが出来たので、もうちょっとバージョンアップしたくて、Mantis1.0.7で落ち着きました。全然XAMPP環境下で問題なく動きます。文字コードは「EUC-JP」で。

ちと、知り合いのプログラマに聞いた話しですと、Web業界はUTF-8にどんどん変わっていくと僕は思っていたのですが、NTTdocomoの携帯キャリアの文字コードはDoJaの最新版ではなんと、S-JISに変更されているのです。UTF-8を諦めたみたいです。

これから、Web業界は当然のごとく携帯が大きくシェアを占めてくると思いますが、文字コード戦争、どうなることやら。少なくとも、UTF-8設計は破綻するような将来性だそうです。

僕はPHPエンジニアなので、EUCをこよなく愛していますが、携帯キャリアはやっぱりS-JISに統一されていくみたいですね。

Mantis1.1.8には、色々な機能が追加されていて、面白そうなのですが、UTF-8なのがネックで使うのを辞めました。メールも文字化けするそうですよ。あとヘッダが嘘らしいです。Mantisがどんどんデグレっていくのは、哀しいものです。

· · · ·

Theme Design by devolux.nh2.me