この記事の例では、ThinkPHPでURL内のエントリーファイルを非表示にして、alipayから渡された値を受け取る方法を説明しています。参考のためにみんなで共有してください。具体的な方法は以下の通りです
現在、企業プロジェクトのニーズは常に変化しています。このプロジェクトでは Thinkphp2.0 が使用されており、conf.php に設定されている URL_MODEL=2 は .htaccess との互換性と、index.php の非表示を目的としていますが、一部のサードパーティ インターフェイスを使用する場合に使用されます。 (Alipay や MSN Open Platform など)、返されるパラメータには ? 数字が含まれることが多く、URL_MODEL=2 の場合、TP は ? を含む URL を自動的に変換します。
変換前: http://www.xxx.com/index.php/alipay/callback/?is_success/T/sign_type/MD5/notify_id/RqPnCoPT3K9/vwbh3I変換後: http://www.xxx.com/alipay/callback/is_success/T/sign_type/MD5/notify_id/RqPnCoPT3K9/vwbh3I
変換された URL にはアクセスできなくなりますが、変換前の URL にはアクセスできます。現時点では、alipay コントローラー URL_MODEL=1 をターゲットにする必要がありますが、このコントローラーでは C('URL_MODEL',1) は役に立ちません。なぜなら、TP はエントリーファイル App::run() を入力するときに直接 404 を発行するからです。
色々考えましたが、まず設定ファイルConf.phpを修正したところ、キャッシュファイル~app.phpが生成されることが分かり、状況に応じてキャッシュファイルを削除する必要があったので、インデックスを修正しました。 php エントリ ファイル (実際、App::run() の前に配置でき、自分でカプセル化できます)。
PHP サンプルコード:
このようにして、www.xxx.com や www.xxx.com/shipin/ などの非 Alipay コントローラー ページにアクセスする場合でも、Web サイトは url_model = 2 を使用してindex.php を非表示にし、URL をフレンドリーにします。
技術記事
ThinkPHP で URL にエントリーファイルを隠したあと、alipay で渡される値を受け取る方法 この記事では、ThinkPHP で URL にエントリーファイルを隠したあと、alipay で渡される値を受け取る方法について説明します。参考のために皆さんと共有してください...