.htaccess
ファイルに問題があります。私はグーグルで試してみましたが、役に立たないものは見つかりませんでした。htaccess内外の要求の区別
index.phpにページを読み込むAJAXリクエストがあります。それをトリガするリンクは、jqueryを介して "#"によって前置されています。したがって、domain.com/foo/bar(ワードプレスパーマリンク)をクリックすると、domain.com/#/foo/barがブラウザに表示され、コンテンツはAJAX経由で読み込まれます。
私の問題は:これらはブログの投稿であるため、外部リンクは実際のリンク(domain.com/foo/bar)を取得しているため、domain.com/#/foo/barにリダイレクトされるようにしますajaxはハッシュをチェックし、その魔法を実行します)。
例here。
先頭に追加のためのjQueryのコードは次のとおりです。
$allLinks.each(function() {
$(this).attr('href', '#' + this.pathname);
...
と、スクリプトは今、私はhtaccessファイルで動作するようにリダイレクトを取得しようとしています
if (hash) { //we know what we want, the url is not the home page!
hash = hash.substring(1);
URL = 'http://' + top.location.host + hash;
var $link = $('a[href="' + URL + '"]'), // find the link of the url
...
をチェックします。私は、要求が
RewriteCond %{REMOTE_HOST} !^127\.0\.0\.1 #???
外部または内部にある場合とURIが、それは、その後のコメントだ、\%23は本当に何とか動作しませんので、問題である「/#/」で始まるかどうかを確認する必要があります。
RewriteCond %{REQUEST_URI} !^/\%23/(.*)$ #???
は、どのように私は、これは単に内部のAJAXのものに影響を与えることなく、domain.com/#/foo/barするdomain.com/foo/barから外部要求をリダイレクトするように動作するのですか?
私はあなたの問題に(もっと簡単に)クライアント側の解決策を提案します。あなたのリンクに '#'を追加するjQueryコードであなたの答えを更新してください。 – vzwick
編集:jqueryコードを追加 – mecreative