• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:.htaccessでサーバエラー)

.htaccessでサーバエラー

このQ&Aのポイント
  • レンタルサーバを契約更新して新しいサーバに移動した結果、.htaccessを使用するとサーバエラーが発生し、HPが閲覧不可になってしまいます。
  • HTML単位でキャッシュ制御を行うために、<meta>タグを使用しましたが効果がありませんでした。
  • サーバはOCNのBizメール&ウェブ ビジネスのホスティングサービスを利用しています。.htaccessを使用する方法はありますか?

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

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.4

ん~。ANo.3の結果を見るとやっぱりHeaderを指定するのがダメっぽいですな。 とするとこれはもうどうしょうもないかな。 OCNにこだわりやお付き合いや政治的な圧力が無ければさっさと別の場所に移るのが吉かと。 どーーーーーしてもこのまま運用してかつno-cacheしたいんだい、となると・・・・例えばPHPとRewriteが使えるのであれば(←OCN メール&ウェブ ビジネスの説明を見るとWordPressが使えるらしいのでこれはOKなはず)、no-cacheヘッダーを返した後ファイルを読んでその中身を返すようなphpを書き、それを.nocache.phpなどという名前でサーバーのドキュメントルートにアップロードする。 そしてドキュメントルートの.htaccessには以下のような設定を書く。以下の内容はFilesディレクティブの中に入れなくていいというか入れちゃいけない。 RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} -f RewriteCond %{REQUEST_FILENAME} \.(html|pdf)$ RewriteRule . /.nocache.php [L] これで.htaccessにHeaderディレクティブを書けなくてもあなたがやりたい事は実現可能だ。

cukey
質問者

お礼

phpまでいくと私の手には負えなくなってきますので、サーバ再移転を含めて検討します。 勉強するか否かでしょうか笑 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.3

> 4.5. > →500が返ってきました。HTML表示せず という事は4が鍵かな。 Files ~ つまりFilesMatchを許可しないという事なのかも知れない。 test.htmlとtest.phpファイルをドキュメントルートに置いて、.htaccessを Options -Indexes SetEnv TZ JST-9 <Files "test.html"> Order deny,allow Deny from All </Files> <Files "test.pdf"> Header set Pragma no-cache Header set Cache-Control no-cache </Files> としてみよう。これでindex.htmlやhoge.pdfはコンテンツが返ってくるがtest.htmlは403が返ってきて、test.pdfはHTTPレスポンスヘッダーにPragma no-cacheならば、正規表現によるファイル名のパターンマッチが許可されないという事になる。 これで500ならtest.htmlだけにしてみる、その次にtest.pdfだけにしてみる、という風に試していただきたい。

cukey
質問者

お礼

重ね重ね本当にありがとうございます。 そしてお詫びをしなければなりません。 前回の試行の結果に誤りがありました。 4.は成功しておりました。 嫌な予感がしてもう一度試してみたのですが、anmochiさんが仰るとおりの内容でした。 結果→pdfのみ403 申し訳ありませんでした。5.及びFileMatchはhtm pdfともに500でした。 そして今回の試行結果ですが <html pdf> test.html →500 hoge.html →500 test.pdf →500 hoge.pdf →500 <htmlのみ> test.html →403 hoge.html →○ test.pdf →○ hoge.pdf →○ <pdfのみ> test.html →500 hoge.html →500 test.pdf →500 hoge.pdf →500 以上の結果になりました。

全文を見る
すると、全ての回答が全文表示されます。
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.2

> 記述してみましたが、403ではなく500が返ってきました。 500か、やねこいな。 500というのは「何か分からないけどとにかくエラーになったよ」という意味で、 原因の特定が難しい。 とにかく最初から.htaccessが置かれていたのだから.htaccess自体が許可されないという事はないはずなので、ちょっとずつ書いてはアクセスしてみよう。 1.初期状態の.htaccessに戻す。 これでダメならもうどうしょうもない。OCNに問い合わせるべきだろう。 2..htaccessを以下の内容にする。 Options -Indexes SetEnv TZ JST-9 Order deny,allow Allow from All これは正しくhtmlが表示されたら成功。 3..htaccessに以下を記述。 Options -Indexes SetEnv TZ JST-9 Order deny,allow Deny from All これは403が返ってきたら成功。 4..htaccessに以下を記述。 Options -Indexes SetEnv TZ JST-9 <Files ~ "\.(pdf)$"> Order deny,allow Deny from All </Files> これでhtmlは表示できるがpdfをダウンロードしようとすると403になると成功。 これが成功なら後はHeaderだけだ。 5..htaccessに以下を記述。 Options -Indexes SetEnv TZ JST-9 <Files ~ "\.(pdf|html)$"> Header set Pragma no-cache Header set Cache-Control no-cache </Files> Files ~ の変わりにFilesMatchを使うとうまくいく場合は記述をそちらに変えよう。 Options -Indexes SetEnv TZ JST-9 <FilesMatch "\.(pdf|html)$"> Header set Pragma no-cache Header set Cache-Control no-cache </FilesMatch> あと、このファイルを修正するのはWindowsのメモ帳ではいけない。 オリジナルの.htaccessを調べて改行コードがLFのみであればサクラエディタなどで編集してアップロードしよう。

cukey
質問者

お礼

書き込みありがとうございます。 1.2. →動作しました 3. →403が返ってきました。 4.5. →500が返ってきました。HTML表示せず エディタはTeraPadを使っています。 改行コードの指定はないようですが、LFのみでアップしましたが改善されませんでした。 http://support.ntt.com/mw-business/faq/detail/pid23000000qj

全文を見る
すると、全ての回答が全文表示されます。
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

仮に <Files ~ "\.(pdf|html)$"> Header set Pragma no-cache Header set Cache-Control no-cache </Files> を <Files ~ "\.(pdf|html)$"> Order deny, allow Deny from All </Files> としてアクセスした時にサーバーエラーにならずに403になるようなら Headerディレクティブ(mod_header)が無効になっている。 この場合はHeaderを使えるようにOCNさんと交渉するか諦めてよそに移るかしかないな。

cukey
質問者

お礼

書き込みありがとうございます。 記述してみましたが、403ではなく500が返ってきました。 まだ希望はあるのでしょうか・・・?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 画像が更新されない

    はじめまして。 ご相談したいことなのですが、 php5 mysql を使用してプログラムを作成しております。 そしてつまずいてしまい2日間解決できずに皆様の力をお借りできればと思います。 フォームを使用し画像を登録するシステムを作っています。 そして画像を変更するシステムを作成しているところで、画像の更新が表示上反映されないのです。 データベース・ティレクトリ内は更新されていて、ページを更新(F5)をするまで画像が反映されないのです。 キャッシュが残っているのかと思い、 <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" /> の記述をしたり 画像を入れているディレクトリに.htaccessを使い Header set Cache-Control "no-cache" Header set Pragma "no-cache" と記述しているのですがまったくダメで困っています。 単純なことかも知れませんがよろしくお願い致します。

    • ベストアンサー
    • PHP
  • htaccessのエラーについて

    htaccessのエラーについての質問です。 リダイレクトを以下のように設定して正常に動作しています。 RewriteEngine On RewriteBase / RewriteRule ^◯◯◯◯◯◯◯$ /◯◯◯◯◯◯◯ [R=301,L] これにキャッシュコント―ロールのため、 以下のコードを追加したところ <Files ~ "\.(pdf|png|jpg|gif)$"> Header set Cache-Control no-cache Header set Pragma no-cache </Files> Internal Server Error になってしまいました。 文字コードや不要な空白などのミスは無いように思うのですが、 htaccessの内容によってエラーの発生は起こるのでしょうか?

  • 画像が更新されない2

    はじめまして。 ご相談したいことなのですが、前回下記の質問をしました。 ************************************************************************** php5 mysql を使用してプログラムを作成しております。 そしてつまずいてしまい2日間解決できずに皆様の力をお借りできればと思います。 フォームを使用し画像を登録するシステムを作っています。 そして画像を変更するシステムを作成しているところで、画像の更新が表示上反映されないのです。 データベース・ティレクトリ内は更新されていて、ページを更新(F5)をするまで画像が反映されないのです。 キャッシュが残っているのかと思い、 <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" /> の記述をしたり 画像を入れているディレクトリに.htaccessを使い Header set Cache-Control "no-cache" Header set Pragma "no-cache" と記述しているのですがまったくダメで困っています。 単純なことかも知れませんがよろしくお願い致します。 ************************************************************************ 上記の質問でURLの後ろにrand関数で?id=***などをつけるとページが更新されるとご回答頂きまして、試したところそのときは無事出来たのですが、また何度かやっているうちに画像が更新されないようになっています。 何か問題があるのでしょうか? 使用しているブラウザの問題なのでしょうか? 何度も同じ質問になってしまい申しわけございませんがよろしくお願い致します。

    • ベストアンサー
    • PHP
  • キャッシュ(?)の消去について。

    <?php //$aはurlの配列です。 foreach($a as $v){ $imgNum = str_pad($count, 5, '0', STR_PAD_LEFT); $imgURL = "img/$imgNum.jpg"; if ( false == @file($imgURL) ){ printf("<a href=\"%s\"><img src=\"img/none.jpg\" /></a>\n", chop($v, "\n")); } else { printf("<a href=\"%s\"><img src=\"$imgURL\" /></a></li>\n", chop($v, "\n")); } //以下のようなものを含めたり。 $imgURL = NULL; @unlink($imgURL); clearstatcache(); } /* php header("pragma: no-cache"); header("cache-control: no-cache"); header("expires: 0"); html <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> .htaccess <Files ~ "\.(html|php|jpe?g|gif|png)$"> Header set Pragma no-cache Header set Cache-Control no-cache </Files> 上記3つも含めていますが、イメージの出力にあたるif文で分岐してくれません。 あきらかにfile関数に対応するjpgはないのですが。 ブラウザにキャッシュは記憶しないよう設定しています。 色々考えましたが、停止してしまいました。 ご回答お待ちしております。 */

    • 締切済み
    • PHP
  • htaccessでキャッシュを制御

    htaccessで「Safari」ブラウザーの時のみキャッシュの制御を したいのですが、書き方がわかりません。 Header set Pragma no-cache Header set Cache-Control no-cache 上記コマンドに条件文(Safariのみ)をつけるにはどうしたらよいのでしょうか? よろしくお願いします

    • 締切済み
    • PHP
  • このタグがいつからブラウザに採用されたのか

    <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">  ↑たとえば、このようなタグがありますが、こういう   書き方は IE, ネスケ など、いつのバージョンから   採用されたのか、とかわかる方法はないでしょうか。

    • ベストアンサー
    • HTML
  • 緊急!!広告バナーとキャッシュサーバーの関係

    とても今困っています。 HTML(smarty使用)であるページを作成しています。 ヘッダー部にJavaScriptで新しい広告バナーを貼り付けたのですが、 キャッシュサーバーの関係で、反映されず、以前の広告バナーが出てしまいます。 Ctrl+F5などのページ更新をすれば新しい広告バナーに変わるのですが・・・・・・。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="1"> などもhead部に入れてみましたが、駄目でした。 サーバーの設定ファイルを変更するしかありませんか? 出来れば、他の画像・動画もある為に、あまりキャッシュ機能は外したくありません。 よろしくお願いします。

  • no-cache の有効範囲について

    no-cache の有効範囲について お世話になっております。 html で以下のタグを記述しているページがあるとします。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> この場合、no-cache の有効範囲は、この html のみなのでしょうか? それともこの html にリンクされている静的ファイル(*.js / *.gif など)も含まれるのでしょうか? 解説ページでは、「この文書がキャッシュされるのを防ぎます」という書き方がされていて、「この文書」の範囲が把握できません。 おそらく前者かなと思っていますが、、 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • MACのsafariでCGIを動作した場合、リロードボタンを押さないと更新されません。教えて下さい。

    MACのsafariでCGIを動作した場合、リロードボタンを押さないと更新されません。教えて下さい。 今perlを使ってスケジュール管理を作っていますが、IEでは、ちゃんと動作します。HTMLに <HEAD> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> </HEAD> と記述し、キャッシュを無効にしてみたのですが、 どうしてもsafariだと新規でスケジュールを入力したものがカレンダーに反映されません。 これは、HTML記述では、キャッシュを無効に できないのでしょうか? 教えて下さい。

    • ベストアンサー
    • Perl
  • 動画配信サイトで動画を閲覧するとキャッシュが残りますよね?(サイトによ

    動画配信サイトで動画を閲覧するとキャッシュが残りますよね?(サイトによっては) キャッシュってブラウザやOSの仕様だそうですが、キャッシュが残らないように配信ってできないのでしょうか? <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="Thu, 01 Dec 1994 16:00:00 GMT"> こういうようなタグ(?)を付ければ完全ではないにしろ抑制できますよね? これができれば、プログレッシブダウンロードの仕組みで専用サーバを使うストリーミング配信のようなことが出来るのでは?? 何をとんちんかんなことをいってるんだと思われるかもしれませんが・・・回答よろしくお願いします。

このQ&Aのポイント
  • 産業用渦巻きポンプやモーターのベアリング挿入部における軸とベアリングの内輪隙間、ハウジングとベアリングの外輪隙間の許容値について教えてください。
  • ベアリングの内輪隙間は締まりばめであり、ベアリングが摩耗して内輪より小さくなった場合には隙間が生じる可能性があります。一方、外輪隙間はハウジングの摩耗によって生じることがあります。
  • ベアリングメーカーのカタログには許容値に関する情報が載っている場合がありますが、設計上の数値と異なる可能性もあるため、許容値について質問しました。
回答を見る

専門家に質問してみよう