php + xdebugを使用してvk.comで直接iframeアプリケーションをデバッグする



この記事では、vk.com環境内で、つまり白人としてiframeアプリケーションを直接デバッグする方法を学習します。 環境で直接アプリケーションを開発するには、サンドボックスの作成(VKontakteのエミュレーション)は必要ありません。VKontakteAPIを直接操作すると、トレースで直接やり取りされるすべての変数を確認できるため、非常に便利です。 私は独創的であるふりをせず、インターネットにそのような記事が存在しないことを確認しました。それがすべてであり、アイデアは明白でシンプルです。 お茶を飲む時間があるなら、グーグルでお茶を飲むというアイデアを思いつきました。





怒り



ソフトウェアを正常に開発できないと、inりの嵐になります。 PHPで最も嫌いなものはvar_dumpです。これは緊急時にprint_rを使用します。つまり、デバッグのために、作業用に完全なIDEスタックを設定するよりも速くなります。 。 他のすべての場合で、通常のスタックがない場合、これはフリーズするので、この状況をあらゆる方法で修正したいと思います。



問題



vk.com内にiframeアプリがあります。 ユーザー、VKontakte API、および音声など、さまざまな秘密鍵を使用して、それらを使用せずに、他のものと常に対話します。 当然、これはすべてデバッグが非常に困難です。 そのため、特定のレベルのアプリケーションは、非常に多くのプログラマーの費用がかかります。 そのような状況では、サンドボックスの状況を部分的に修正します。 Iframeを考慮すると、脳を少し拡張すると、そのバリエーションのサンドボックスは、アプリケーションが開発サーバーに愚かにダウンロードされる可能性があり、IDEとxdebugを備えたプログラマーがあるため、普遍性ではなく複雑さのためにその関連性を失います。



開発スタック



XAMPP 1.7.4、PHP 5.3、NetBeans 7.01、vk.com(iframe)、xdebug、DNS



スタック設定



かなり少ないテキスト情報をおaび申し上げます。 私はそれを明確にするためにビデオを準備しました。



-Apacheを構成する

仮想ホストに移動

<VirtualHost *:84> DocumentRoot D:\work\other\htdocs\ru-wartur-app\www\public-html ServerName app.wartur.ru ErrorLog D:\work\other\htdocs\ru-wartur-app\log\apache2\error.log CustomLog D:\work\other\htdocs\ru-wartur-app\log\apache2\access.log common <Directory D:\work\other\htdocs\ru-wartur-app\www\public-html> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
      
      





ローカル開発サーバー、私の場合はXAMPPを再起動します(全員にアドバイスします)。

私たちは84番目の港について恥ずかしくない。 会社に多くの開発者がいれば、彼らは90日までそこに着くことができると思いますが、私の家では本当にいっぱいです。



-DNS設定

エントリAを作成します。私の場合、app.wartur.ruは188.134.79.140、つまりルーターへのマッピングです。



-vkontakte設定

Vkontakte-> settings-> IFrame Address: app.wartur.ru :84 /に移動します



-NetBeansプロジェクトの作成

xdebugが設定されていると仮定しますが、これについては詳しく説明しません。

プロジェクト設定->実行構成->プロジェクトURL:私の場合app.wartur.ru:84 /



-私たちは人生を始めて楽しむ

-ブレークポイントを設定し、IDE内でデバッグを開始します。ブラウザにセッションがあり、IDEがデバッグモードに入りました

-アプリケーション(私の場合はvk.com/app2820627 )を起動します。新しいリンクをクリックするか、APIを起動するか、何でも好きなものが得られます。



映像



品質をおredびします。いつもやり直す時間がないので、厳密に判断しないでください





役に立てば幸いです。 皆さん、頑張ってください。 記事が1時間で提出され、3〜4時間伸ばされていない場合に気に入っています。



UPD:上に書かれていることはすべてかなり複雑です。 外部から作業中のマシンへのアクセスを同時に許可する必要がない場合、すべてがはるかに簡単です。

-DNS構成スキームおよびそれに関連するすべてのものから削除します。

-アプリケーション設定にローカルホストを追加しました。私の場合はapp.warturruです (私自身はこのポート84が気に入らなかったので、応援しました!!!)。

ヒントについてはHabrに感謝します! 皆さんに幸運を!



All Articles