2017-03-20 1 views
0

나는 PHP 애플리케이션의 관리자로 Ajax를 호출하고있다. 기본적으로 내 URL은 www.mysite.com/admin/product/search/ 입니다. my ajax는 동일한 폴더의 다른 파일에서 PHP를 호출해야하지만 Network Console Chrome에서는 301 개의 영구 파일을 가져옵니다. www.mysite.com/admin/product/file.php/Ajax 301 Redirect

그러나 그것은이다 www.mysite.com/admin/product/search/file.php /입니다 : 클릭하면 그것을해야한다

<script type="text/javascript"> 
 
    $(document).ready(function(){ 
 
     $("button").click(function(){ 
 

 
      $.ajax({ 
 
       type: 'POST', 
 
       url: 'file.php', 
 
       success: function(data) { 
 
        console.log(data); 
 
        
 

 
       } 
 
      }); 
 
    }); 
 
}); 
 
</script>

내가 시도 '/file.php', /../file.php하지만 아무것도 작동하지 : 여기

(301)을 제공하는 것은 내 코드입니다.

내 htaccess로 나는 내가 .PHP 확장자를 추가 할 또한 문제를 만들 생각하지만 난 마지막 줄을 제거 할 때 URL은해야 나에게 404 페이지 오류

DirectoryIndex index.php 
<IfModule mod_gzip.c> 
    mod_gzip_on  Yes 
    mod_gzip_dechunk Yes 
    mod_gzip_item_include file  \.(html?|txt|css|js|php|pl|jpg|png|gif)$ 
    mod_gzip_item_include handler ^cgi-script$ 
    mod_gzip_item_include mime  ^text/.* 
    mod_gzip_item_include mime  ^application/x-javascript.* 
    mod_gzip_item_exclude mime  ^image/.* 
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* 
</IfModule> 
Options -Indexes 

RewriteEngine On 
RewriteBase /app/admin/ 
RewriteRule ^styles/(.+)?$ templates/styles/$1 [L] 
RewriteRule ^scripts/(.+)?$ templates/scripts/$1 [L] 
RewriteRule ^icons/(.+)?$ templates/icons/$1 [L] 
RewriteRule ^images/(.+)?$ templates/images/$1 [L] 

# Removed Redirect Loop #1518 
#RewriteRule ^ajax/(.+)?$ ajax/$1 [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ index.php?q=$1 [QSA,L] 

답변

0

을 제공합니다

url: '../file.php' 

..은 디렉토리 계층에서 한 수준 위로 올라가는 것을 의미합니다.

나는 왜 301 코드를 얻는 지 모르겠다. 찾을 수없는 파일에 대해 404를 얻어야한다.

+0

지금은 200이되지만 console.log에는 빈 행이 표시됩니다. 무언가가 작동하지만 원하는 것을 얻지 못합니다. JSON –

+0

에 dataType을 추가했습니다 : json하지만 이제 console.log에 null이라고 말합니다 –

+0

스크립트에'data :'옵션과 함께 매개 변수를 보내야합니까? – Barmar