WebSurfer's Home

トップ > Blog 1   |   ログイン
APMLフィルター

日本語の文字化けの問題(1)

by WebSurfer 2010年5月4日 13:48

ストアに SQL Server を利用する設定では、日本語の文字化けの問題が出ない理由が分かりました。 「高度な設定」の「WebResource.axdを圧縮」にチェックマークが入っていないためでした(チェックマークを入れると文字化けします)。

自分でチェックマークを外したわけではなく、自動的にそうなるので気がつきませんでした。

ストアに SQL Server を利用する場合、web.config の BlogEngine 要素下の blogProvider 要素の属性を defaultProvider="DbBlogProvider" としますが、その場合、デフォルトでは「WebResource.axdを圧縮」にチェックマークは入りません。

ちなみに、ストアを xml ファイルにするには defaultProvider="XmlBlogProvider" としますが、その場合は自動的にチェックマークが入りました。

Tags:

BlogEngine.NET

ブログのページを開設しました

by WebSurfer 2010年5月3日 16:53

BlogEngine.NET のホームページ

2010/5/1 にホームページの中にブログを開設しました。

中身は自分で作ったわけではなく、 BlogEngine.NET というサイトから、2010/4/30 時点での最新版 1.6.1 を入手して、既存の自分のホームページに追加しただけです。 (「追加しただけ」といっても、それなりの設定は必要ですが)

BlogEngine.NET を選んだ理由は、ASP.NET ベースの Web アプリケーションだからです。既存の自分のホームページも ASP.NET ベースなので統合するのが簡単そうだったし、ASP.NET に関する知識があればカスタマイズすることも可能と思ったからです。

特に、BlogEngine.NET は ASP.NET Forms 認証機能を持っていて、それを自分のホームページの既存の Forms 認証システムにシームレスに統合できそうな点にひかれました。

備忘録として、どのように既存のホームページに BlogEngine.NET を追加したかの概略を書いておきます。

  • このホームページは ActiveWeb というホスティングサービス会社の Win2008 というサービスを利用しています。まずそこに、ホスティングサービス会社が提供しているツールを利用して、仮想ディレクトリを作成します。
  • BlogEngine.NET のダウンロードサイトから Web 版(2010/5/3 時点での最新版 BlogEngine.NET 1.6.1 (web).zip)をダウンロードして解凍し、上記の仮想ディレクトリに丸ごとアップロードします。
  • ストアには、デフォルトの xml ファイルではなく SQL Server を使うので、既存のデータベースファイルに BlogEngine に必要なテーブルを追加します。これは、ホスティングサービス会社が提供しているツール myLittleAdmin を利用し、ダウンロードしてきた Web 版の setup\SQLServer フォルダに含まれているクエリを走らせて行います。
  • ストアに SQL Server を使えるように web.config を変更します。その方法は、Codeplex のサイトの Database Blog Provider が参考になると思います。ただし、接続文字列の内容や connectionStringName を全くそのとおりにしたのでは当然ダメで、自分のホームページの既存の設定にあわせて修正する必要はあります。
  • ログインの際のユーザー認証と承認に、ASP.NET Forms 認証の既定のプロバイダ SqlMembershipProvider, SqlRoleProvider を使用するように web.config の設定を変更します。 その方法は、CodePlex のサイトの MSSQLMembershipProvider / MSSQLRoleProvider が参考になると思います。これも、接続文字列などを自分のホームページの既存の設定にあわせて修正する必要があります。
  • 最後に、ユーザーがホームページ本体とブログのページを行き来する際に再認証を受ける必要をなくするための設定を行います。そのためには、ホームページ本体とブログ両方の web.config で name, protection, path, validationKey, validation, decryptionKey および decryption を同じにします。これは、MSDN ライブラリのアプリケーション間のフォーム認証が参考になりました。

ここまでやって、とりあえず表示することができるようになりました。

IIS のアプリケーションプールのマネージパイプラインモードは、今のところ「統合」のままです。「クラシック」にしないと "some of the software will fail in strange ways" と書いてありましたが、まだそういう問題に遭遇していません。 BlogEngine はホームページ本体とは別アプリケーションなので、それのみ「クラシック」にする方法はないか、ホスティングサービス会社に聞いてみる予定です。

うわさに聞く日本語の文字化けの問題は、ストアをデフォルトの xml ファイルにした場合は起こるようですが、SQL Server を利用する設定では、今のところ問題ないです。このまましばらく様子を見たいと思います。

Tags:

BlogEngine.NET

About this blog

2010年5月にこのブログを立ち上げました。その後 ブログ2 を追加し、ここは ASP.NET 関係のトピックス、ブログ2はそれ以外のトピックスに分けました。

Calendar

<<  2017年1月  >>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

View posts in large calendar