既存のサイトにハードコードされたURL(例:http://www.example.com/users/username/2012/03/12/article-title.php
)があります。そのページ内にはarticle_id
がハードコードされています。このURLはarticle_path
フィールドにデータベースに格納されます。私の.htaccessファイルの中にbase64エンコード(または同様のハッシュ)を行うことはできますか?
これを変更して、今後このURLを.htaccess経由で "偽造"するようにしたいと思いますが、もちろんこれらの古いスタイルも考慮する必要があります。私は、ユーザーがhttp://www.example.com/users/username/2012/03/12/article-title.php
に行くときのようなものを考えていた
、.htaccessファイルはhttp://www.example.com/article.php?article_path=/users/username/2012/03/12/article-title.php
に内部的にリダイレクトし、その後、article.php
はarticle_path
マッチングのためのデータベースを検索しますし、その記事を表示します。
URLが255文字以上になる可能性があるので、URLをハッシュして短縮するようにしてください。
.htaccess内で何かをハッシュできますか?もしそうなら、どうですか?あるいは、私はこれをどうやってやるべきかについて完全に根拠がないのですか?
このURLは、ホストを含めても現在92文字です。まだ多くの部屋があります。また、255文字の制限はどこにありますか? – deceze
Erm。ああ。なんらかの理由で私はそこにあると思った。しかし、知識の目的のために、私はまだ.htaccessにハッシュメソッドがあるかどうかを知りたいと思います! http://stackoverflow.com/questions/417142/what-is-the-maximum-length-of-a-url –
ホスト名の制限は256文字ですが、URLの他の部分(パス、クエリ、等)はもっと大きくなります(2000文字以上で安全です)。 – tplaner