2016-03-24 11 views
1

私は私のリンクをリダイレクトするための.htaccessを持っている:書き換えモジュール・ブロックは、jQueryの

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 

問題は、私は<head>でこれを持っているにもかかわらず、この.htaccessファイルはjqueryのは私のサイトに含めることを許可していないということです

私はすでに試した
<script src="<?php echo WEBROOT;?>views/js/jquery.js"></script> 

RewriteRule ^(views/js/)($|/) - [L] 

jquery.jsが配置されているフォルダを除く外します。私も試みた:

RewriteCond %{REQUEST_URI} !^/js/?$ 

しかし、何も許可されていないjquery !!

解決方法はありますか?

+1

'するRewriteCond% {REQUEST_FILENAME}!-f'はすでにjqueryの特別なルールを追加する必要はなく、既存のファイルをリダイレクトしません。あなたの 'src =" wrongpath "'が間違っています –

+0

あなたの答えをありがとうが、私はクロムの中でCtrl + Uを使ってファイルにアクセスできるので、私の 'src =" NotAWrongPath " src = "ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js" 'しかし、まだ動作しません!ところで、もし私が.htaccessを無効にすると、jqueryはうまく動作します! –

+0

あなたのウェブページの先頭に ''を追加してみてください。 – starkeen

答えて

0

これは私の.htaccessです:

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 

これは私がjQueryのを含める方法です:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 

それとも

<script type="text/javascript" src="<?php echo WEBROOT;?>js/jquery.js"></script> 

そして、これが私のindex.phpページです:

<?php 
define('ROOT',str_replace('index.php','' ,$_SERVER['SCRIPT_FILENAME'])); 
define('WEBROOT',str_replace('index.php','' ,$_SERVER['SCRIPT_NAME'])); 

require ('core/database.php'); 
require ('core/controller.php'); 
require ('core/model.php'); 
require ('core/view.php'); 


$url = isset($_GET['url']) ? $_GET['url'] : null; 

if (empty($url)) { 
    require ('controllers/home.php'); 
    $controller = new home(); 
    return FALSE; 
} 

$params = explode('/', $url); 
$file = 'controllers/'. $params[0] .'.php'; 
if(is_file($file)){ 
    require $file; 
    $controller = new $params[0](); 
    $model = $controller->loadModel($params[0]); 

    if(isset($params[1])){ 
     if (method_exists($params[0], $params[1])) { 
      $controller->{$params[1]}(); 
     } 
     else { 
      echo '<h1>Method '.$params[1].' of Controller '.$params[0].' Not Found</h1>'; 
     } 
    } 
} else { 
    /* can't find controller*/ 
    echo '<h1>Controller Not Found</h1>'; 
} 

?> 

だから、jQueryのだけ私のようなページでは意味、ホームページに今取り組んでいる:それはその長い記事場合

申し訳ありませんが動作しません

localhost/myProject/controller1/method1が、それをチェックしてくださいみんな