重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

お世話になります。
現在、phpを使ったサイトを作成しています。
客先の意向で拡張子を.phpではなく.htmlにしなくていはいけませんが、htaccessを触ることは禁止されいてます。
htaccess使わずにファイル名index.phpをindex.htmlで表示させる方法があれば教えてください。

お願いいたします。

A 回答 (6件)

.htaccessが触れないなら、なおのことhttpd.confなんて無理でしょうね(php.iniなどはphpとして動かない以上は意味がないです)。



・拡張子.htmlは諦めてもらう
・.htaccessを触れるか、代替方法があるサーバを用意してもらう

の二択です。

ファイル名省略時に(index.htmlが存在しないときに)index.phpは拾わないのですかね(DirectoryIndexがどうなっているか確認してみてください)。もしそうであれば、全部ディレクトリ分けしてindex.phpを置く構成で「ファイル名なし」にしてしまうという選択肢もありますが・・・。
    • good
    • 0

あまり頭のいい方法ではありませんが


コンテンツはajaxでうけとりhtmlは呼び出すだけ
という方法がないことはないかも
    • good
    • 0

サーバーの設定(httpd.conf)を変更することで、拡張子に関連付けられた挙動を変更できるわけですが、それを簡単に変更できるようにしたものが、.htaccessと考えて問題ありません。

つまり、.htaccessの変更を禁止されているということは、サーバーの設定変更を禁止されていると考えることができます。
結論としては、サーバーの設定変更せずに、拡張子に関連付けられたMIMEタイプを変更することはできません。分かりやすく言うと、別の方法はありません。

index.htmlというのは例えなのかもしれませんが、もし、ファイル名にphpが入るのを嫌うのであれば、ディレクトリ名で終わるパスに変更することでも対応できそうですね。

http://example.com/index.php → http://example.com/
http://example.ocm/hoge/index.php → http://example.com/hoge/


つまり、すべてのファイル名をindex.phpに変更して、ディレクトリ単位でページを管理するということです。特別に珍しい管理方法ではないはずです。
    • good
    • 0

index.htmlの中でphpを呼び出して、ユーザにはindex.htmlをアクセスさせるだけではダメなんですか?

この回答への補足

ちょっと面白いかもです。
試してみます。

ありがとうございます。

補足日時:2012/07/14 11:22
    • good
    • 0

php.iniではなく、httpd.confでした。

環境によってはphp.confかもしれませんが。
    • good
    • 0

php.iniを書き換えます。



.htaccessすら使えないのだから、php.iniを編集することはできないのでしょうけど。
.htaccessもしくはphp.iniを書き換えることと、htmlでPHPを実行させることは両立し得ないので、客先にはどちらかを諦めてもらいましょう。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
客先のHPに関して複数の会社が担当ごとに更新をしているため、大幅な変更を嫌っているようです。
拡張子を変えたらリンクも切れるわけですから当たり前ですよね。。。
htaccess変更できるように掛け合ってみます。

お礼日時:2012/07/13 07:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!