2009-04-02 13 views
2

大規模な古典的なaspアプリケーションがあり、asp.netまたはphpに移行することを検討しています。どちらの賛否両論について話したいとは思わないが、私はむしろphpに移行する際にワンショットで完全な書き換えを避ける方法があるかどうかを知りたい。私たちは単に書き換えを行うだけでは現在のコードベースの維持を止めることはできません。だから、物事を手にする必要があります。大きな古典的なASPページをPHPに移行しますか?

我々はasp.netに移動したい場合は、我々は両方の技術の中で可能な共有セッションデータである必要があり、もう一方はただ走り続ける一方で、新しいasp.netのコードに置き換えサイトの一部を持っています。そのようなアプローチはPHPで可能ですか?誰かがこのような移行に関する経験を持っているのですか?

答えて

4

ASPクラシックとASP.NETの間でセッション状態を共有する機能は、どちらの言語の本質的な機能ではありません。 、あなたはかなり簡単にPHPで同様のものを実装することができ、Microsoftの例を使用することにより http://www.google.com/search?client=safari&rls=en-us&q=share%20session%20data%20between%20ASP%20and%20ASP.NET%20pages&ie=UTF-8&oe=UTF-8

は、Microsoftは、サンプルコードを提供します。基本的には、上記のMicrosoftのコードのASP Classic部分を使用します。 PHPでは、各ページがロードされるときに、データベースから配列またはコレクションにセッション状態を読み取るための非常にシンプルなクラスを作成します。これはPHPで少し余分な作業ですが、コーディングとテストの数日を超えてはいけません。それはIIS7でさらに良いはずであるため

PHPは、私の限られた経験とサポートでIIS6上でかなりよく動作します。私がヒットした唯一の不具合は、あなたがLinux/Unix上で動作していると仮定しているPHPコードの大部分ですが、これは一般的にファイル処理コードの問題です(ユーザーイメージのアップロードと考える)。ローカルファイルシステムのパスで動作します。彼らはあなたのファイルシステムがWindows上で\ likeの代わりに/を使うと仮定しているからです。明らかに修正するのはかなり簡単です。

幸運を祈る!

+0

非常に役に立ちました。どうもありがとう。 – Mats

1

はい。 1つのWebアプリケーションでASPページとASP.NETページの間でセッションデータを共有することは可能です。私は私の仕事で私たちの遺産のコードでそれを行います。

IIS上でPHPを実行することは可能です。 ASPとPHPスクリプトの間でセッションを共有することについては不明です。それは達成することはかなり簡単だけれども

0

もう1つのオプションです。 John Bootyも良い提案をしています。

セッションデータが機密情報でない場合は、Cookieを有効にしているプラ​​ットフォームに依存しないCookieを操作できます。

おそらく考えるポストが、別のものを与え、あなたの最良の選択肢ではありません。

+0

これは実際には私たちの選択肢ではありません。とにかく答えてくれてありがとう。 – Mats

1

は、私たちの世界へようこそ「私はむしろPHPへの移行時に一発で完全に書き直しを避ける方法があるかどうかを知りたいのです」。

私たちのFogBugzコードベースは古典的なASPで書かれていて、Linuxでそれを提供したいときは、最も簡単な解決策は、aspを読み込んでphpを読むコンパイラを書くことでした。それはそれほど難しくはなく、数週間を要しませんでした。

私たちがアプリケーション全体を.NETに切り替えることを決めたのは、.NETオブジェクトコードを出力するために少しコンパイラを調整することだけでした。

しかし、あなたの答えに戻るには、ASPとPHPが非常によく似ていて、あなたのアプリに応じて、そこにほとんどの方法を得るかもしれない素朴な翻訳者がいます。

+0

興味深い考えのように聞こえます。 btw、あなたはコンパイラについてどこか別の話をしているのですか、それともこの会社の秘密ですか?私はそれについてもっと読むのが大好きです。 – Mats

+0

これは秘密ではありませんが、出荷品でもありません。私たちのアプリが他の誰にとっても一般的に有用であることはあまりにも具体的です。 –

関連する問題