phpファイルを拡張子htmlで表示する方法は?

このQ&Aのポイント
  • phpファイルをSEO対策としてhtmlとして表示する方法について教えてください。
  • htaccessを使用して、phpファイルを拡張子htmlで表示する方法について教えてください。
  • リンク先のパラメータを取得する際に、htmlファイルではなくphpファイルを遷移させる方法について教えてください。
回答を見る
  • ベストアンサー

phpファイルを拡張子htmlで表示する

【PHP 5.2.13 を使用しています】 phpファイルをSEO対策としてhtmlとして表示したいと考えています。 htaccessにて --------------------------------------- AddType application/x-httpd-php .html php_flag allow_url_include on --------------------------------------- と表記し、テスト用に用意したファイル(index.html)は問題なく動作しました。 ですが、これ以上に実装したいことがあります。 --------------------------------------------- http://www.******.jp/sample/area_1-junre_1.html --------------------------------------------- 上記のようなリンク先を --------------------------------------------------- http://www.******.jp/sample/index.php?area=1&junre=1 --------------------------------------------------- というような形でパラメータを取得したいです。 そもそも --------------------------------------------- http://www.******.jp/sample/area_1-junre_1.html --------------------------------------------- をリンク先に指定してる時点で「area_1-junre_1.html」というファイルに 遷移してしまうと思うので、どういう処理を加えると、上記のことが 実装できるのでしょうか。 どなたかご教授いただけませんでしょうか? どうぞよろしくお願い致します。

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • tomaju
  • ベストアンサー率76% (84/110)
回答No.1

Apache Webサーバーの拡張機能である mod_rewrite を使って、 URL書き換えを行えば実現できるのではないかと思います。 まずは「mod_rewrite URL書き換え」をキーワードに調べてみてください。

pure_kapi
質問者

お礼

tomaju様 ご回答いただきありがとうございました。 tomaju様の言われた通り調べると、mode_rewriteでやりたかったことができそうです。 とても助かりました。 ありがとうございました。

関連するQ&A

  • PHPファイルをHTMLの拡張子のまま表示させる

    PHPファイルのページを拡張子がHTMLのままで表示させたいのですが、 .htaccessで設定すると、ブラウザではダウンロードされてしまいます。 ファイルの配置やソースで間違っている所はありますか? フォルダ index.html .htaccess ソース(.htaccess) AddType application/x-httpd-php .htm .html サーバ さくらインターネット

    • 締切済み
    • PHP
  • PHPを拡張子htmlで動かすには?

     phpを拡張子.htmlでも動くようにしたいのですが・・・ .htaccessで AddType application/x-httpd-php .html を指定しています。 ブラウザで試してみると、 http://***.***.***/index.html = 動作OK http://***.***.***/ = ファイルのダウンロード となってしまいます。 ブラウザでファイル名を直接指定すれば問題ないですが、 index.htmlは、ブラウザからドメインのみ指定した場合 ファイルのダウンロードとなってしまいます。 また、サーバーはロリポップを使ってます。 解決方法がお分かりになる方いらっしゃいましたら、 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPについて

    WEB上でPHPによるアクセス制限をしたいのですが、.htaccessを設定しているとサーバーエラーとなります。.htaccessをはずすと初期設定画面へは飛べ、初期設定できるのですが。 .htaccessの内容が悪いのか、どうか教えてください。 以下内容です。 AddDefaultCharset Shift_JIS AddType application/x-httpd-php .php .html php_flag session.use_cookies Off php_flag session.use_trans_sid On php_value session.name sd ともう一カ所のです。 order allow,deny deny from all allow from localhost

    • 締切済み
    • PHP
  • .htaccessの中身が php5 CGI版で動かない

    拡張子htmlファイルをphpファイルと認識させる為に、 .htaccessで AddType application/x-httpd-php .html AddHandler x-httpd-php .html と書いて対応していました。 今まではサーバーのphpのバージョンがPHP4(DSO版)だったのですが、昨日サーバーのバージョンがPHP5(CGI版)になってから、上記のような.htaccessが機能しなくなってしまいました。 order deny,allow deny from all ↑ これはちゃんと動くので、.htaccess自体が拒否されてるみたいなことはないと思います。 AddType application/x-httpd-php .html AddHandler x-httpd-php .html ↑ このプログラムがPHP5 CGI版にて意図した動作とならないのです。 何か分かる方いらっしゃいましたら、宜しくお願い致します。

    • ベストアンサー
    • PHP
  • html拡張子のままphpを使いたい

    類似質問を先日立てましたが状況変わったので改めさせて頂きました。 よろしくお願いします。 html拡張子のままphpを動かしたいのですが、うまくいきません。 PHPバージョン:5.3.3 Server API:CGI版 レンタルサーバー phpinfo()で確認した情報:REDIRECT_HANDLER存在しない 1).htaccessに以下書いたが動かない。 ※ AddType application/x-httpd-php .php .html ※ AddHandler application/x-httpd-php .php .html ※ AddHandler php5.3.3-script .html (php_flag allow_url_fopen on、php_flag allow_url_include on 追加も試し済) 2)Telnetなどは使えない。 http://www.hlplus.jp/php/blog/index.php?UID=1293208553 上記が検索でかかったので参考にしたのですが、 残念ながら権限の関係で上記URLの方法は使えませんでした。 3).php時には正常に稼働 html内に記述しているのはincludeとechoのみで、.php拡張子の場合は動作するのは確認済です。(htmlに名前変更したとたんにソースにそのまま出る、ないしダウンロードになって動作しない) ■構造など /php/base.php /file/a/a/a.html base.php <?php $a='<div id="~~~">~~~~~</div>'; ?> a.html <?php include_once(dirname(__FILE__).'/~~~~/php/base.php'); ?> <!doctype html> <html lang="ja"><head><meta charset="utf-8"><title>~~~</title> </head><body> <header><?php echo $a; ?></header> (省略) </body></html> 構造としてはこんな感じで、base.phpをa.htmlへインクルードしています。 考えられる可能性があればご教授頂けると幸いです。

    • ベストアンサー
    • PHP
  • html内でphpが動かない

    PHP5.3.3、レンタルサーバー使用です。 よくあるパターンでhtml拡張子のファイルでphpを動かしたいのですが、 .htaccessに必要記述をしても、今回使用するサーバーではなぜか動きません。 .htaccess <Files ~ "^\.ht"> order allow,deny deny from all satisfy all </Files> AuthUserFile /~~~~~~/.htpasswd AuthGroupFile /dev/null AuthName "Please enter your ID and password" AuthType Basic require valid-user DirectoryIndex index.php index.html Header set X-UA-Compatible "IE=edge" AddHandler php5.3.3-script .html 最期の行は以下も試しました。 AddType application/x-httpd-php .php .html AddHandler application/x-httpd-php .php .html (php_flag allow_url_fopen on php_flag allow_url_include on 追加も) html内に記述しているのはincludeとechoのみで、.php拡張子の場合は動作するのは確認済です。(htmlに名前変更したとたんにソースにそのまま出る、ないしダウンロードになって動作しない) /php/base.php /file/a/a/a.html 構造としてはこんな感じで、base.phpをa.htmlへインクルードしています。 htaccess自体は設定できているので、サーバー側の設定でしょうか? 考えられる可能性があればご教授頂けると幸いです。

    • 締切済み
    • PHP
  • PHPのコードがそのまま表示されてしまう。

    同じようなメール内容ですみません。 過去のものを見て回りましたが、うまく理解できませんでした。 標記のとおりPHPのプログラムがそのままブラウザに表示されてしまうので困っています。 まずファイル構造はこのようになっています。 httpdocs | ---------index.php   |----.htaccess これだけです。この「index.php」にアクセスすると、携帯キャリア別にページを移動させるプログラムです。 ほかのサーバーでテストしたら稼動しましたでのプログラムには問題ありません。 次に.htaccessの設定は下記のようになっています。 Options +ExecCGI AddHandler cgi-script .cgi AddType application/x-httpd-cgi .cgi AddType application/x-httpd-php .php こちらの質問を試してみましたが、 apacheの設定ファイル(httpd.conf)とPHPの設定ファイル(php.ini)の設定は、私が管理者でないので操作することはできませんでした。 http://oshiete1.goo.ne.jp/qa2855291.html どなたか宜しくお願い致します。

    • 締切済み
    • PHP
  • htaccessのAddTypeが使えないサーバで.phpファイルを.htmlとして表示させる方法は?

    利用サーバではhtaccessのAddTypeが使えない機能制限があるそうで、サーバで.phpファイルを.htmlとして表示させることが、以下のhtaccessへの記述ではできません。 AddType application/x-httpd-php .php .html どこかに書いてあったので以下も試しましたがダメでした。 <FilesMatch "html$"> ForceType application/x-httpd-php </FilesMatch> どうにかして代替方法が欲しい状態でが何か良い方法がないでしょうか。 どうぞ宜しくお願い致します。

    • 締切済み
    • PHP
  • htmlファイルにPHPとCGIを埋め込む

    ロリポップサーバーをレンタルしてサイトを開設しています。 現在.htaccessファイルに下記のコードを記述して.htmlファイルにPHPのコードを埋め込んで実行させています。 「AddType application/x-httpd-php .htm .html」 これは問題なく動いているのですが、別に.htmlファイルにCGIのコードを記述し動作させたいと思っているのですが、これは可能でしょうか? .htmlファイルのまま、PHPとCGIのコードを一緒に記述し動作させたいです。 .htaccessで上記のコードの下に「AddType application/x-httpd-cgi .htm .html」というコードを記述してみましたが、動作はしませんでした。 埋め込みは下記のようにしました。 「<!--#include file="cgiファイルまでのパス" -->」 ご存知の方いらっしゃいましたらご教示ください。 よろしくお願いします。

    • 締切済み
    • CGI
  • .htaccessでの設定について

    はじめまして。 .htaccessの設定で質問があります。 .htaccessで「AddType application/x-httpd-php .html」と設定し、 PHPのファイルをhtmlの拡張子で表示するようにしています。 全てのファイルで.htmlがPHPとして動作しないように、 <Files index.html> AddType application/x-httpd-php .html </Files> としています。 上記の設定でindex.htmlだけPHPとして動作すると思いますが、 これをあるDirectoryのindex.htmlだけに限定することはできないのでしょうか。 具体的には、 /htdocs/index.html では、PHPとして動作し、 /htdocs/test/index.html では、PHPとして動作しないようにしたいのです。 よろしくお願いします。

専門家に質問してみよう