私はウェブサイトにいます。URLは次のようになりますhttps://somesite.com/serve
私にサービスを提供しているページの名前を伝える必要があります。
のようindex.html
にindex.htm
、、など...
私はウェブサイトにいます。URLは次のようになりますhttps://somesite.com/serve
私にサービスを提供しているページの名前を伝える必要があります。
のようindex.html
にindex.htm
、、など...
あなたがそれを見つけることは基本的に不可能です。
提供されているファイルを知りたい。おそらく、htaccessやその他の手法でURLの書き換えに直面しているでしょう。ページが作成されたフレームワーク(フレームワークの場合)を取得できた場合、どのファイルを使用するかを判断することはおそらく不可能です。次に、リクエストの対象となるファイルであるドキュメントを読むことができます。ほとんどのフレームワークには、これらのファイルの1つまたは複数があります。たとえば、codeignighterにはindex.phpのみが含まれ、symfony 2にはapp.phpとapp_dev.php(および異なる環境が必要な場合はその他)が含まれます。しかし、通常、URLの書き換えが行われた場合、どのファイルがリクエストを処理するかを知ることはできません。
@Daleで述べたように、URLの内容を無視することもできません。ファイルのように見えるように、最後に拡張子を付けることができないためです。場合によっては、最後に.phpまたはより頻繁に.html/.htmに気付くことがあります。
おそらく、次のような書き換えルールを持つ.htaccessがあります。
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
そうでなければ、おそらく代わりにクエリ文字列があり、おそらく次のようになります。
index.php?c=products&m=view&id=345
私はあなたが何を意味するのか完全にはわかりません。しかし、$ _ SERVERで見つけることができると確信しています(ドキュメントはここにあります)
幸運を
ページ名を見つけようとしているだけの場合は、次のようにすることができます。
<?php
$currentFile = $_SERVER["PHP_SELF"];
$parts = explode('/', $currentFile);
echo $parts[count($parts) - 1];
?>
(サーバーが.htaccess、mod_rewrite、mod_headersをサポートしていると仮定します)
一時的に.htaccessRewriteRuleを使用して、ヘッダー内のすべてまたは一致するファイル名を表示します。
例では、すべてのphpファイルヘッダーにファイル名のタグを付けます。
<IfModule mod_rewrite.c>
RewriteEngine on
<IfModule mod_headers.c>
RewriteRule .*\.php$ - [E=FILENAME:$0]
<FilesMatch ".php$">
Header set MY-COOL-FILENAME "filename=%{FILENAME}e"
</FilesMatch>
</IfModule>
</IfModule>
リンク