プロジェクトを Linux に変更した後、$_GET[] 入力パラメータはデフォルトで URL コード化されますか? ? ?
判明しました
サーバー: Win2003 + IIS は問題なく正常に動作します
ローカル: Win10 + Apache および Win10 + nginx は問題なく正常に動作します
今
最近 Alibaba Cloud CentOS7.2 と nginx1.10.2 を置き換えたプロジェクトで問題が発生しました。
具体的な質問 (プロジェクトは ThinkPHP3.2.3 で書かれています)
検索用のページにフォームフォームがあり、ボタンをクリックすると検索用のデータを取得します
リーリーコントローラーで I('key') ($_GET['key'] に似た入力変数を取得する TP でカプセル化されたメソッド) を使用してこのキーワードを取得し、ページ番号リンクで同様の URL を生成します。以下へ
リーリー上のページ番号リンクをクリックしてページをめくると:
ローカルでキーを取得する方法、または元のサーバーからキーを取得する方法に関係なく、キーは文字列「Liu」です
しかし、新しいサーバーでは、取得されたキーワードは文字列「%e5%88%98」です
その結果、この種の検索を含む私のオリジナルのプログラムはすべて無効になり、ページをめくることができなくなりました。
私が試した解決策
I('key') はデータを取得するときに urldecode を使用しますが、1 ページしかめくることができないことがわかり、何度めくってもキーは再度 URLencode されます。無限に URL コード化されます
URLパターンは変更できないので、この方法は諦めました
なぜですか?
Win+IIS Win+nginx は問題ありません。linux+nginx を使用するとこの問題が発生するのはなぜですか?これは私、Linux、または nginx のせいですか?
プロジェクトを通常の状態に戻すことを急いでいますので、回答を手伝ってください
返信内容:
判明しました
サーバー: Win2003 + IIS は問題なく正常に動作します
ローカル: Win10 + Apache および Win10 + nginx は問題なく正常に動作します
今
最近 Alibaba Cloud CentOS7.2 と nginx1.10.2 を置き換えたプロジェクトで問題が発生しました。
具体的な質問 (プロジェクトは ThinkPHP3.2.3 で書かれています)
検索用のページにフォームフォームがあり、ボタンをクリックすると検索用のデータを取得します
リーリーコントローラーで I('key') ($_GET['key'] に似た入力変数を取得する TP でカプセル化されたメソッド) を使用してこのキーワードを取得し、ページ番号リンクで同様の URL を生成します。以下へ
リーリー上のページ番号リンクをクリックしてページをめくると:
ローカルでキーを取得する方法、または元のサーバーからキーを取得する方法に関係なく、キーは文字列「Liu」です
しかし、新しいサーバーでは、取得されたキーワードは文字列「%e5%88%98」です
その結果、この種の検索を含む私のオリジナルのプログラムはすべて無効になり、ページをめくることができなくなりました。
私が試した解決策
I('key') はデータを取得するときに urldecode を使用しますが、1 ページしかめくることができないことがわかり、何度めくってもキーは再度 URLencode されます。無限に URL コード化されます
URLパターンは変更できないので、この方法は諦めました
なぜですか?
Win+IIS Win+nginx は問題ありません。linux+nginx を使用するとこの問題が発生するのはなぜですか?これは私、Linux、または nginx のせいですか?
プロジェクトを通常の状態に戻すことを急いでいますので、答えを手伝ってください
TPページングのソースコードにURLを生成する際にurlencode操作があります
リーリー解決策: ページング クラスをインスタンス化するときに、検索パラメーターを 3 番目のパラメーターとして渡すことができます。詳細については、Page クラスの構築メソッドを参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

エラーの原因とソリューションPECLを使用してDocker環境に拡張機能をインストールする場合、Docker環境を使用するときに、いくつかの頭痛に遭遇します...

WordPressサイトファイルアクセスが制限されています:最近.txtファイルにアクセスできない理由のトラブルシューティング。一部のユーザーは、ミニプログラムのビジネスドメイン名を構成する際に問題に遭遇しました:�...

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

同じシステムで複数のPHPバージョンを同時に実行することは、特に異なるプロジェクトがPHPの異なるバージョンに依存する場合、一般的な要件です。同じようになる方法...

多くのウェブサイト開発者は、ランプアーキテクチャの下でnode.jsまたはPythonサービスを統合する問題に直面しています:既存のランプ(Linux Apache MySQL PHP)アーキテクチャWebサイトのニーズ...

ThinkPhp6ルーティングパラメーターは、中国と完全な買収で処理されます。 ThinkPhp6フレームワークでは、特殊文字(中国語や句読点など)を含むURLパラメーターがしばしば処理されます...

ThinkPhp6データベースクエリ:TP6を使用してSQLステートメントを実装する方法SelectSum(JIN)、Sum(CHU)ThinkPhp6フレームワークでSysdbuil、SQLステートメントの使用方法SELECT ...
