今までは.htaccessに
<Files ~ "\.(pdf|html)$">
Header set Pragma no-cache
Header set Cache-Control no-cache
</Files>
上記の記述をして運用していたのですが、レンタルサーバを契約更新して
新しいサーバに移動してからサーバエラーがでてしまい、HPが閲覧不可となります。
この記述を外すと正常に動作します。
しょうがないのでHTML単位で制御しようと
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="expires" content="0">
上記をheadに記述していますが、効果なくキャッシュされてしまいます。
どうにか.htaccessを使う様にできますか?これはサーバ側の仕様でしょうか・・・
サーバはOCNのBizメール&ウェブ ビジネス のホスティングサービスを利用しています。
レンタルサーバ契約時のhtaccess初期記述内容
Options -Indexes
SetEnv TZ JST-9
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ディレクティブを書けなくてもあなたがやりたい事は実現可能だ。
phpまでいくと私の手には負えなくなってきますので、サーバ再移転を含めて検討します。
勉強するか否かでしょうか笑
本当にありがとうございました。
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だけにしてみる、という風に試していただきたい。
重ね重ね本当にありがとうございます。
そしてお詫びをしなければなりません。
前回の試行の結果に誤りがありました。
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
以上の結果になりました。
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のみであればサクラエディタなどで編集してアップロードしよう。
書き込みありがとうございます。
1.2.
→動作しました
3.
→403が返ってきました。
4.5.
→500が返ってきました。HTML表示せず
エディタはTeraPadを使っています。
改行コードの指定はないようですが、LFのみでアップしましたが改善されませんでした。
http://support.ntt.com/mw-business/faq/detail/pi …
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さんと交渉するか諦めてよそに移るかしかないな。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS html cssのmargin 5 2022/12/03 11:04
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- HTML・CSS htmltとcssのコードで 1 2022/11/26 13:37
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングについての質問...
-
こんにちは。
-
SUN BBSの改造方法
-
掲示板(kentさんの所のsunbbs...
-
ラジオボタンが両方とも選択で...
-
wordの数式について 定積分を書...
-
チェックボックスの返す値
-
別formのhidden項目を自form値...
-
VB.net データーグリッドビュー...
-
select値をhiddenのvalueに渡し...
-
[HTML]プルダウンメニューの横...
-
WEBページを強制的に横画面で見...
-
postデータのあるページの再表示
-
VB初心者。小数点以下の表示で...
-
ローカルテストサーバーと本番...
-
FORMのselectの選択肢を最初か...
-
OPTIONタグにループは使えない...
-
JavaScriptのwindow.openでリフ...
-
tracert ができない原因
-
チェックボックスでのvalue値の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミングについての質問...
-
WEBアプリケーションからフォル...
-
perlを難読化、暗号化させたい
-
UTF-8で文字化けしないようにす...
-
CGI実行できない。ソースが表示...
-
popular among popularの違いを...
-
CGI.pmのstart_htmlで思い通り...
-
.htaccessでサーバエラー
-
cgiで動画ファイルをアップロー...
-
content-dispositionによるファ...
-
メール送信後のHTMLが文字化け...
-
cgiからsendmailを送信で文字化け
-
SUN BBSの改造方法
-
wordの数式について 定積分を書...
-
掲示板(kentさんの所のsunbbs...
-
ラジオボタンが両方とも選択で...
-
「value」に2つの値をセットす...
-
チェックボックスの返す値
-
select値をhiddenのvalueに渡し...
-
INPUT TYPE
おすすめ情報