今朝、私は自分の .htaccess ファイルに変更を加えていましたが、うっかり自分のサイトの何かを壊してしまいました。ブラウザは、レンダリングされるのではなく、php ファイルをダウンロードするように求めます。
変更する前は、サイトは適切に機能していました。ファイルと .htaccess の元のバックアップ コピーに戻そうとしましたが、それでも同じ問題が発生します。
私が問題を抱えているサイトはhttp://asteroidsinc.com/です
ただし、/index.php URL からアクセスすると、正しく機能しているように見えます。
ヘッダーは次のとおりです。
GET / HTTP/1.1
Host: asteroidsinc.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Cookie: __utma=79720583.1041020739.1336336641.1336336641.1336336641.1; __utmb=79720583.3.10.1336336641; __utmc=79720583; __utmz=79720583.1336336641.1.1.utmcsr= (direct)|utmccn=(direct)|utmcmd=(none); __atuvc=2|19
HTTP/1.1 200 OK
Date: Sun, 06 May 2012 20:44:00 GMT
Server: Apache
Last-Modified: Thu, 03 May 2012 10:32:07 GMT
Accept-Ranges: bytes
Content-Length: 13811
Age: 6521
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: application/x-httpd-php
そこの最後の行「Content-Type: application/x-httpd-php」は、「text/html」であるべきだと確信しているため、特に懸念されます。
元の .htaccess ファイルが続きます (単に www を非 www にリダイレクトするだけです)
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.asteroidsinc\.com$
RewriteRule ^(.*)$ "http\:\/\/asteroidsinc\.com\/$1" [R=301,L]
以下を .htaccess ファイルに追加しようとしましたが、成功しませんでした。
DirectoryIndex index.php
しかし、これでは問題は解決しません。
次の行も試しました
AddType application/x-httpd-php .php
しかし、/index.php URL 経由でアクセスしようとすると、php は実際には正しく解析されていると思います。
前述のように、何を変更したのか正確にはわからず、元のコピーに戻そうとしましたが、それでも問題は解決しません。
* *編集 ダウンロードを求められていた index.php ファイルを完全に削除しましたが、ドメイン URL にアクセスしようとすると、ファイルをダウンロードするように求められます。 Webサーバーから完全に削除されていましたが(キャッシュについてはほとんど知りません)
* * もう一度編集 私が気づいたもう 1 つの興味深い点は、ランダムな文字列を URL の末尾に追加すると (つまり、http://asteroidsinc.com/?random=1923849839 )、問題なく読み込まれることです。これはキャッシングの問題ということですか?キャッシュが最終的にクリアされると、それは消えますか?