2013-10-27 2 views
0

내 API api.server.com에 대한 하위 도메인을 설정했습니다. 여기에서 내 앱을 실행할 수 있지만이 하위 도메인의 폴더 (특히 v1)에서 실행하고 싶습니다. 이것을 시도 할 때 나는 단지 404을 얻는다.하위 도메인의 폴더에서 Slim Framework 실행

나는 .htaccess을 여러 경로로 수정하여 기쁨도없이 루트로 되돌립니다.

나는 여기서 모든 부정적 시도를 해왔다.

/all/the/way/back/to/root/www/api/v1/ 
    /the/way/back/to/root/www/api/v1/ 
    /way/back/to/root/www/api/v1/ 
    /back/to/root/www/api/v1/ 
    /to/root/www/api/v1/ 
    /root/www/api/v1/ 
    /www/api/v1/ 
    /api/v1/ 
    /v1/ 

하지만 여전히 404가 발생합니다. 해결 방법은 없나요?

이 WWW/API에 대한 실제 htaccess로는/V1

RewriteEngine On 

    # Some hosts may require you to use the `RewriteBase` directive. 
    # If you need to use the `RewriteBase` directive, it should be the 
    # absolute physical path to the directory that contains this htaccess file. 
    # 
    # RewriteBase/
    RewriteBase /api/v1/ 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 

    RewriteRule ^(.*)$ index.php [QSA,L] 
    RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last] 

내가

<?php 
    //Gets the document root 
    $root = getenv("DOCUMENT_ROOT") ; 
    Echo $root; 
    ?> 

가 제공하는 아래 스크립트를 실행하는 API를 웹 사이트

로 주요 도메인을 사용하려면 나 /var/www/domainname.com/web

답변

0

순전히 솔루션입니다. 각 경로 앞에 v1이 있으므로 /items/ 경로가 /v1/items/

0

다음을 배치하십시오. .htaccess 안에 코드 www/api. v1 안에 .htaccess을 제거하십시오.

RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !^/v1 [NC] 
RewriteRule^v1/index.php [L] 

RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last] 

나는 /www이 웹 사이트의 %{DOCUMENT_ROOT} 디렉토리입니다 있으리라 믿고있어. 당신이 api.server.com/v1로 사이트를 액세스하는


때문에,이 web/api/v1/.htaccess을 시도 : 주위 작품으로

RewriteBase /v1/ 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule^index.php [L] 

RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last] 
+0

으로 변경되었습니다. 회신에 대한 질문보기 – maxum

+0

api.server.com에서 앱이 정상적으로 작동한다고 말했습니까?/api dir에서 제공되는 파일을 의미 했습니까? 그러면 htaccess는 어디에 있었습니까?/www 또는/www/api에 있습니까? –

+0

파일은/api/v1/api/v1에서 .htacces가 제공됩니다. – maxum