1

Grapnel.jsというルーティング ライブラリを使用しています。の形式で URLindex.php#something/somethingを取得するので、htaccess を使用してそれに書き換え/something/somethingています。somethingしかし、私は 2 ~ 3 個の s を使用できるようにしたいので、QSAフラグを使用してクエリ パラメータとして追加します。

問題は、htaccess が明らかに ajax 呼び出しに適用され、無限ループを引き起こしていることです。使ってみました

RewriteCond %{REQUEST_URI} !^/file.php
RewriteRule ^(.+)$ /#$1 [NE,R,QSA,L]

RewriteRule ^[^file](.+)$ /#$1 [NE,R,QSA,L]

Javascript は次のとおりです。

router.get('*', function(req){
    var first = req.params[0];
    var parts = first.split("/");
    var len = parts.length;

    $.ajax({
        url: 'file.php', 
        data: {
            parts: parts,
            len: len
        }
    }).done(function(data) {
        $('#output').html(data);
    });
});
4

1 に答える 1