🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

Q&A

解決済

4回答

984閲覧

公開するサーバーで拡張子(例.php)を省略してファイル名のみで表示したい。それと共に.phpをブラウザで指定しても表示されないようにしたい →ファイル名のみアクセス可能な設定にしたい

gugupoo

総合スコア31

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

0グッド

0クリップ

投稿2019/11/10 16:32

さくらVPSを利用しています。
まず.phpファイルをさくらVPSなど公開したい場所に設置します。
このphpファイルを公開したいのですが、.phpという情報を出したくないために
aiueo.phpというファイルとしたら aiueo のみでアクセスできるようにしたとします。

ネット上で調べて、これは.htacessファイルに例えば以下にように記述して aiueo のみで aiueo.phpにアクセスできるように出来ました。

RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.*)$ $1.php

これでaiueo のみで aiueo.phpにアクセスしたと同様の結果が出てきました。
しかしaiueo.phpにアクセスしても同様の情報は表示されるので aiueo.phpとブラウザに入力した時は404などにしたく思います。
aiueo.php が元ということをセキュリティ上隠蔽したいという目的です。
宜しくお願い致します・・;

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

「拡張子を隠してる」という認識が間違い。
フレームワークのルーティングで実現してるのでそんな古いやり方はもう誰もやってない。

PHP以外ならファイル自体一切存在しないこともある。
SPAならURLが変わっても元のhtmlは変わってない。逆にURLが変わらないまま表示を変えることもできる。仮想的なもの。

URL=ファイルを表示してるって思い込みは捨てていい。

投稿2019/11/11 06:00

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2019/11/12 01:50

SPAだと、HTML側は「ファイルが存在しないところでは、どのURLへリクエストされても同じHTMLのレスポンスを返す」ように設定することもありますね。
guest

0

おす!

この程度の印象に映ればよいので

ってぇのがどの程度なのかよく分からねぇんだけんどもよぅ、

/var/www/project └ aiueo └ index.php

みたいにすれば http://hogehage.jp/aiueo でアクセスできるようになんぞ。
あとは ***.php を指定されたらリダイレクトかければいいんじゃねぇか?

おらは

/var/www/project └ index.php

ってやって、index.php 内で非公開ディレクトリにある実体ファイルを読み込んで、
その中でルーティング処理してっけど、
それはまぁ、かなりの技術力が必要になってくっから
おめぇがどこまでやりてぇか次第なんじゃねぇか?

投稿2019/11/11 01:26

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/11/11 01:30

下のやつは、どんなURLでアクセスしてきても全部 index.php に mod_rewrite するようになってんだ。 もちろん、*.jpg とか *.css みたいな直接アクセスしてもらいてぇファイルは除外してあっけんどもなぁ。
guest

0

aiueo.php が元ということをセキュリティ上隠蔽したいという目的です。

気休め程度にしかならないですし、他のルートでPHP発信だとわかってしまうことがあります。セキュリティ的には、わざわざやるほどの価値はないと考えます。

投稿2019/11/10 22:48

編集2019/11/10 22:50
maisumakun

総合スコア145967

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gugupoo

2019/11/11 01:12

セキュリティ的には価値がないかもですが、 「このURLはhtmlともphpとも拡張子がないな」 と思われる程度で私には価値があります。 よって、方法をご教授頂けましたら・・すみません。
gugupoo

2019/11/11 01:16

拡張子がなくて逆に aiueo.aaaa aiueo.ggggg など文字列を変えてブラウザに入力しても 同じ画面になる状態にしたい所存です。
maisumakun

2019/11/12 01:57 編集

> 「このURLはhtmlともphpとも拡張子がないな」 と思われる程度で私には価値があります。 なら、生成するURLをすべて拡張子なしで書けばいいだけの話です。.phpによるアクセスをブロックする実装をしたところで、わざわざ.phpをつけてアクセスを試みるような、心得ある人間への防御にはほぼならないですし、URLから消しておけばパット見はPHPということも伝わらないです。
guest

0

ベストアンサー

php側で.php含むかどうかチェックしてリダイレクト(または404をレスポンスとする)されては?

あと.php無しで.phpにリライトできるのと同じ理屈で、.phpでアクセスできるからといって.phpで処理されると知っているのは制作者だけだったりします。
拡張子の問題なら如何様にもできるので、別回答にあるように(あくまで制作者側の)気休めにすぎません。

投稿2019/11/10 21:43

編集2019/11/10 23:19
m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gugupoo

2019/11/11 01:15

私が訪問したサイトでの体験で ~~~aiueo などで終わっているサイトがあります。 で、ここを ~~~aiueo.php ~~~aiueo.aaaaa ~~~aiueo.vvvvv ~~~aiueo.cccc などこのaaaaa vvvvv など何に変えても 一定の画面しか表示されず 私にとっては本当にここのサイトさんのファイルは分からない状態です。 深いユーザーでなく私のようなライトユーザーに この程度の印象に映ればよいので この方法を求めています。 宜しくお願い致します。
m.ts10806

2019/11/11 01:25

あくまで「制作者」なので、今回で言えば「質問者さん」ご本人の話です。 実行しているプログラムがphpと分かったところでコードが外に漏れるわけでもないですし、どこまでを心配されているのかわかりません。 もしかしたらphpじゃないかもしれないですしね。 aiueoディレクトリのindexプログラムかもしれません。 本当にその程度です。 それでもやりたければ回答の一行目に書いたことをやってみてください。phpプログラムによるリダイレクトは、.abcと同じ先に飛ばしてしまえば.phpが有効とバレることはありません。 まあ… あとは既存のフレームワークのようにするか、ですね。 teratailのURLの遷移を見てみれば参考になると思います(ルーティングとかでteratail内調べると私が回答している質問も結構あります)
gugupoo

2019/11/11 06:27

色々とさらに勉強してみようと思います!有難うございました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問