問題タブ [pathinfo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
813 参照

asp.net-mvc - ASP.NET MVC: PathInfo 制限?

ASP.NET 2.0 の制限の 1 つは、PathInfo が 255 文字に制限されていたことです。その制限は ASP.NET MVC URL の問題ですか、それとも ASP.NET MVC ルーティング URL には何らかの長さ制限がありますか?

0 投票する
6 に答える
8205 参照

php - http://localhost/index.php/articles/edit/1/my-first-article のような URL は、.htaccess なしでどのように機能しますか?

私はこれを取得しません:

http://localhost/index.php/articles/edit/1/my-first-article

この URL は、 Kohana フレームワークのドキュメントに例として記載されています。インストールのファイルを調べてみましたが、それとは関係のない自分のもの以外に .htaccess はありません。

では、index.php が呼び出されたのに、パラメータとして、URL に追加されたディレクトリのように見えるのはどうしてでしょうか? それは「本物」に見えません。

それとも、ネイティブの PHP/Apache/HTTP が実際にどのように機能するのでしょうか? 私が理解しているように、/ は常に「ねえ、ディレクトリ!」と言っています。私にはまったく意味がありません...どうしてそれが可能ですか?それとも、私が見たり見つけたりできない.htaccessがどこかにありますか?

0 投票する
1 に答える
1193 参照

apache - クリーン URL の mod_rewrite または path_info

私は常に mod_rewrite を使用してきれいな URL を作成してきましたが、最近まで他のオプションがあることを知りませんでした。数週間前、ここにいる誰かが、 apache を使用してもまったく同じ効果が得られると指摘しましたPATH_INFO。今考えてみると、これはほとんどの PHP フレームワークが行っていることであり、必要に応じて mod_rewrite に純粋に依存しindex.phpて URL からブートストラップを削除していると思います。

すべてがいくつかの質問につながります。

  1. 次のようなクリーンで柔軟な URL 構造を作成するためのより良い方法はどれ /page/var/foo/bar/2ですか?
  2. 2 つの方法の相対的な長所と短所は何ですか?
  3. リソース使用量などの点で、どちらの方法が優れていますか?

ありがとう。

0 投票する
6 に答える
12749 参照

php - PATH_INFO を取得するポータブルで安全な方法

(便利な)変数を受け取るポータブルな方法を探しています。$_SERVER['PATH_INFO']

しばらく読んだ後、PATH_INFOCGI/1.1 に由来することが判明し、すべての構成に常に存在するとは限りません。

その変数を取得するための最良の(主にセキュリティ上の)方法は何ですか-手動で抽出することは別として(セキュリティ上の懸念)。

0 投票する
2 に答える
50308 参照

php - PHPのPATH_INFOとは正確には何ですか?

すべての外部URLは「module/action?key1=param1」のようになります。カスタマイズはできませんが、高速です。違いは、最初はPHPのGETを使用し、2番目はPATH_INFOを使用することです。

私はPATH_INFO何度か見たことがありますが、それが正確に何であるかはまだわかりません。それは何をするためのものか?

0 投票する
2 に答える
5455 参照

php - PHPパス情報の問題

このスニペットがあり、ディレクトリに 3 つの画像と 3 つのフォルダーがあります。画像は問題なくエコーされますが、各フォルダーに対してこのエラーも表示されます。

注意: 未定義のインデックス: 119 行目の D:\Data\Websites\wamp\www\StephsSite\PHP\manage.php の拡​​張子

私がやりたいのは、拡張子のないファイル(フォルダー)が見つかった場合に静止画像を表示することです。どうすればこれを達成できますか?

0 投票する
4 に答える
440 参照

php - /index.php/seo_path のような URI の信頼性

ときどき (特に mod_rewrite が利用できない場合)、次のパス スキームが使用されることに気付きました。

これ、少なくとも Apache では機能しているようで、index.phpが呼び出され、 を/clean_url_here介してその部分を照会できます$_SERVER['PATH_INFO']。PHPは、この機能を宣伝しています。また、たとえば、CodeIgniterフレームワークは、この手法を URL のデフォルトとして使用します。

質問:この手法の信頼性は? Apache が呼び出さずindex.phpにパスを解決しようとする状況はありますか? lighttpd、nginx、IIS、AOLServer はどうですか?

ServerFault の質問ですか? PHPコード内でこの機能を使用することにもっと関係があると思います。そこでここで質問します。

補遺: VolkerK によって示唆されているように、この質問に対する合理的な拡張は次のとおり$_SERVER['PATH_INFO']です。

0 投票する
5 に答える
1409 参照

php - pathinfoとfnmatch

ここでpathinfoに対するfnmatchの速度に関して小さな議論がありました:ファイルがphpであるかどうかをチェックする方法は?

私は完全に確信していなかったので、2つの機能のベンチマークを行うことにしました。

動的パスと静的パスを使用すると、pathinfoの方が高速であることがわかりました。

私のベンチマークロジックと結論は有効ですか?

編集:cmdからmacphpを使用する

PHP 5.3.0(cli)(ビルド:2009年7月20日13:56:33)Copyright(c)1997-2009 PHP Group Zend Engine v2.3.0、Copyright(c)1998-2009 Zend Technologies

動的パスpathinfo3.2973630428314fnmatch 3.4520659446716 x1.05

静的パスpathinfo0.86487698554993fnmatch 1.0420439243317 x1.2

cmdからのmacxamppphp

PHP 5.3.1(cli)(ビルド:2010年2月27日12:41:51)Copyright(c)1997-2009 PHP Group Zend Engine v2.3.0、Copyright(c)1998-2009 Zend Technologies

動的パスpathinfo3.63922715187fnmatch 4.99041700363 x1.37

静的パスpathinfo1.03110480309fnmatch 2.38929820061 x2.32

私のマシンで100,000回の反復を数秒で表した結果のサンプルを含めます。

コード:

0 投票する
3 に答える
1799 参照

iis - ColdFusionでcgi.PATH_INFOを使用してURLでUnicodeを使用する際の問題

私のColdFusion(IIS 6のMX7)サイトには、検索語をURLに追加する検索機能がありますhttp://www.example.com/search.cfm/searchterm

私が遭遇している問題は、これが多言語サイトであるため、検索語が別の言語である可能性があることです。たとえば、次القاهرةのような検索URLにつながる可能性があります。http://www.example.com/search.cfm/القاهرة

問題は、URLから検索語を取得するようになったときです。私はcgi.PATH_INFO検索ページと検索語のパスを取得し、これから検索語を抽出するために使用しています。/search.cfm/searchtermただし、検索でUnicode文字が使用されている場合、それらは疑問符に変換されます/search.cfm/??????

これらは、ブラウザがUnicode文字をフォーマットできない、または出力時に壊れているのではなく、実際の疑問符として表示されます。

ColdFusionがURLでUnicodeをサポートしているかどうか、またはこれを解決して完全なURLを何らかの方法で取得する方法についての情報が見つかりません。誰かアイデアはありますか?

乾杯、

トム

編集:さらなる調査により、この問題はColdFusionではなくIISに関連している可能性があると私は信じていますが、私の元のクエリはまだ有効です。

さらに編集

その結果、問題はかなり深刻になっているように見えますGetPageContext().GetRequest().GetRequestUrl().ToString()http://www.example.com/search.cfm/searchterm/?????

0 投票する
7 に答える
530 参照

php - /123 と /?123 の違いは何ですか?

一部のサイト (古いhttp://careers.stackoverflow.com 1.0 を含む) には、次のようなクエリ文字列があることに気付きました。

http://somewebapp.example/?123

と比較して:

http://somewebapp.example/123またhttp://somewebapp.example/id/123

開発者が 2 番目と 3 番目の例ではなく、最初の例を使用して Web アプリの URL を実装することを選択する理由は何ですか?

おまけとして、最初の例を PHP で実装するにはどうすればよいでしょうか。それ123がデータベース テーブルのある行の主キーであるとします。(URL から取得する方法を知る必要があるだけです123。データベースに の主キーを照会する方法は既に知っています123。)

編集 [5/28]:おっと、後者の 2 つの URL が何であるか、それらがどのように機能し、どのように実装するかを知っていることをみんなに知らせるのを忘れていました。リマインダーをありがとう、とにかく偶然に明らかにされたいくつかの無関係な誤解があったと思います!