我有一個.htaccess
文件的問題。我嘗試了谷歌搜索,但找不到有用的東西。htaccess內部和外部請求區別
我有一個AJAX請求將頁面加載到index.php中。觸發它的鏈接被前綴「#」通過jquery。因此,如果您點擊鏈接domain.com/foo/bar(wordpress permalink),您將在瀏覽器中獲得domain.com/#/foo/bar,並且內容將通過AJAX加載。
我的問題是:由於這些是博客文章,外部鏈接抓住真正的鏈接(domain.com/foo/bar),所以我希望他們重定向到domain.com/#/foo/bar(原因然後ajax檢查哈希並且做它的魔術)。
示例here。
的前置jQuery代碼是:
$allLinks.each(function() {
$(this).attr('href', '#' + this.pathname);
...
,然後腳本檢查
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
...
現在我試圖讓重定向與htaccess的工作。我需要檢查,如果該請求是外部或內部
RewriteCond %{REMOTE_HOST} !^127\.0\.0\.1 #???
,如果URL以「/#/」,這是一個問題,因爲它是一個評論的話,\%23沒有開始真正的工作不知何故。
RewriteCond %{REQUEST_URI} !^/\%23/(.*)$ #???
我如何得到這個工作簡單地重定向的外部要求從domain.com/foo/bar在不影響內部AJAX的東西domain.com/#/foo/bar?
我會建議一個(更容易)客戶端解決您的問題。你能否更新你的答案與負責添加'#'到你的鏈接的jQuery代碼? – vzwick
編輯:添加了jquery代碼 – mecreative