/ / htaccessを使ってXMLファイルを「偽造」する? - php、xml、.htaccess、sitemap

htaccessを使用してXMLファイルを "偽造"しますか? - PHP、XML、.htaccess、サイトマップ

これが私が解決しようとしている問題です: 私は常に新しいコンテンツで更新されている動的なphp駆動のWebサイトを持っています、そして私は私のXMLサイトマップが自動的に最新のものであることを望みます。 2つの選択肢があります。

  1. 私のすべてのコンテンツと出力を得るために私のデータベースに問い合わせるphpスクリプトを書きなさい http://mysite.com/sitemap.xmlcronジョブを使用してスクリプトを定期的に実行します。
  2. 私のサイトマップをphpファイル(sitemap.php)として作成し、dbに問い合わせてそのファイルに直接書き込み、そしてhtaccessリライトルールを使うだけです。 RewriteRule ^sitemap.xml$ sitemap.php そのため、誰かがsitemap.xmlを要求するたびに、それらはphpファイルにリダイレクトされ、新しいサイトマップファイルが取得されます。

オプション2を使う方が簡単でクーロンを設定する必要はないので、オプション2を使用しますが、Googlebotがsitemap.xmlを実際にはphpファイルとして認識しないのではないかと思いませんか。

オプション#2が機能するかどうか、誰が知っていますか。最新のsitemap.xmlファイルを自動的に作成するためのより良い方法があるかどうかではありませんか?私はこれでどれほどのトラブルが発生したかに本当に驚いています...ありがとう!

回答:

回答№1は5

スクリプトが適切なスクリプトを生成するようにしてください。 Content-Type ヘッダ。あなたはそうすることができます ヘッダ().


回答№2の場合は1

Googleはヘッダーと本文のみを取得します。応答phpスクリプトがWebサーバーが返すのと同じヘッダーと同じ本文を返す場合、PHPスクリプトの応答とサーバーによるXMLファイルの応答に技術的な違いはありません。つかいます curl -i http://example.com/ あなた自身でそれをテストしたいのであれば、リクエストのレスポンスヘッダを調べるため。

それで、あなたは安全にこれをすることができます、それはmod_rewriteが設計されたもののためのものです(他の多くのものの隣に)。