特定のフォルダーで .htaccess のリライトを動作させない方法

セキュリティ上の理由で、個人情報を送信する際には、暗号化されることが望ましいという理由で、問い合わせや、発注フォームなどを送信するところで SSL を用いた https:// としていましが、 Cookie データの受け渡しが IE でうまくいかないということもあり、サーバーには負担がかかると言われていましたが、昨今のサーバーは十分な能力があるようですし、GoogleのSEO対策にも有効ということですので、サイト全体を https:// にすることにしました。

.htaccess rewrite - Google 検索_ - https___www.google.co.jp_search

サイト全体を https:// にするために、 http:// でのアクセスを https:// にリダイレクトするために、.htaccess に次の行を埋め込んだ所、簡単にリダイレクト設定できました。


<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</IfModule>

しかし、問題が発生しました。
クロンジョブで
—-
lynx --dump http://www.example.com/cron/prg.php
—-
上記のようなプログラムを走らせていた所、https:// にすると、次のようなエラーがサーバーから送られてくるようになりました。


Looking up www.example.com
Making HTTP connection to www.example.com
Sending HTTP request.
HTTP request sent; waiting for response.
HTTP/1.1 302 Found
Data transfer complete
HTTP/1.1 302 Found
Using https://www.example.com/cron/prg.php
Looking up www.example.com
Making HTTPS connection to www.example.com
Retrying connection without TLS.
Looking up www.example.com
Making HTTPS connection to www.example.com
Alert!: Unable to make secure connection to remote host.

lynx: Can’t access startfile http://www.example.com/cron/prg.php

クロンジョブのコマンドを 次のように https:// としても同じようなエラーでした。
—-
lynx --dump https://www.example.com/cron/prg.php
—-

どうやら lynx –dump では https:// が作動しないようです。

そこで、/cron/ フォルダーだけ、リダイレクトさせないようにするには、どうしたら良いのか探した所、/cron/.htaccess につぎのようなコマンドを書き込んで、リライトエンジンの動作を止めるようにすれば解決しました。
—-
<IfModule mod_rewrite.c>
RewriteEngine off
</IfModule>
—-

以上、忘れないように忘備録。

スポンサーリンク
レクタングル(大)
レクタングル(大)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする