0

これは私が解決しようとしているものです...

  1. URL に mydomain.com の /foldername/index.htm && /foldername/ が明示的に含まれている場合のみ、http://www.example.comにリダイレクトします。
  2. URL にURL パラメータ /foldername/index.htm を含める必要がありますか?たとえば、リダイレクトしないでください。
  3. 他のすべての URL はリダイレクトしないでください

これは不完全な私のjavascriptですが、最終的に私が解決しようとしているものです...

var locaz=""+window.location;
if (locaz.indexOf("mydomain.com") >= 0) {
    var relLoc = [
        ["/foldername/index.htm"],
        ["/foldername/"]
    ];
    window.location = "http://www.example.com"; 
}

これは、ブックマークのような特定の方法に基づいて、一部のユーザーがヒットしている URL を管理するためのものです。ページを削除せずに、さらなる措置を講じる前に、何人のユーザーがページにアクセスしているかを監視したいと考えています。

4

3 に答える 3

1

URL に が含まれている場合、ページは常に同じドメインにあるので/foldername/pagename.htmはない/foldernameでしょうか? したがって、&&そこでのチェックは冗長になります。

以下のコードを試してください。

var path = window.location.pathname;

if  ( (path === '/foldername' || path === '/foldername/index.html') && !window.location.search ) {
    alert('should redirect');
} else {
    alert('should not redirect');
}
于 2013-03-28T14:09:29.327 に答える
0
var url = window.location;
var regexDomain = /mydomain\.com\/[a-zA-Z0-9_\-]*\/[a-zA-Z0-9_\-]*[\/\.a-z]*$/    
if(regexDomain.test(url)) { 
  window.location = "http://www.example.com"; 
}
于 2013-03-28T13:57:43.423 に答える
0

位置オブジェクトをよく理解してください。属性としておよびを提供しpathname、 RegExp の手間を省きます (とにかく間違いを犯したいでしょう)。次のようなものを探しています:searchhostname

// no redirect if there is a query string
var redirect = !window.location.search 
  // only redirect if this is run on mydomain.com or on of its sub-domains
  && window.location.hostname.match(/(?:^|\.)mydomain\.com$/)
  // only redirect if path is /foldername/ or /foldername/index.html
  && (window.location.pathname === '/foldername/' || window.location.pathname === '/foldername/index.html');

if (redirect) {
  alert('boom');
}
于 2013-03-28T14:44:17.780 に答える