2013-12-09 4 views
0

을 B 시도 나는 다음과 같은 디렉토리 구조가 있습니다여러 다시 쓰기 규칙은 다음

root 
--/inc 
--/img 
--/docs 
---/public 
----/contact 
-----/img 
------telephone.jpg 
-----contact.php 
---/private 

내 목표는 '문서'는 '포함'웹 페이지에서 각 폴더를 확인하는 것입니다. 각 폴더에는 자신의 /img/ 폴더가 있고 /bin/ 폴더도 있습니다.이 폴더에는 Mp3에서 PDF까지 포함될 수 있습니다.

현재 모든 것을 index.php로 라우팅하고 거기에서 파일을 수동으로 리디렉션합니다. 그러나 이것은 매우 천천히 진행되고 있습니다.

try /img/{url_path} 
Otherwise, try /docs/$1/img/$2 
Otherwise route through index.php 

어떻게이 일에 대해 갈 수 : 나는 빠른 것 생각 무엇 말, 이미지가하려고했다가 /contact/telephone.png를 통해 액세스 할 경우 내 htaccess로이 같은 것입니까? 현재 내 .htaccess는 다음과 같습니다.

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
# if file not exists 
RewriteCond %{REQUEST_FILENAME} !-f 
# if dir not exists 
RewriteCond %{REQUEST_FILENAME} !-d 
# avoid 404s of missing assets in our script 
#RewriteCond %{REQUEST_URI} !^.*\.(jpe?g|png|gif|css|js)$ [NC] 
RewriteRule .* index.php [QSA,L] 
</IfModule> 

도움이 되었습니까? 감사합니다

답변

0

당신은 당신의 DOCUMENT_ROOT/.htaccess 파일에서이 같은 작업을 수행 할 수 있습니다

RewriteEngine On 

# check if this image path exists in docs/<folder>/img first 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{DOCUMENT_ROOT}/docs/$1/img/$2 -f 
RewriteRule ^([^/]+)/(.+?)/?$ /docs/$1/img/$2 [L] 
+0

그냥 생각하지만, 같은/IMG/실제 디렉토리입니다, surley 내가 그에 대한 규칙이 필요하지 않습니다? – Chud37

+0

또한/docs /에/img/폴더가 있어야합니다.이 코드는 위의 코드에없는 것 같습니다. – Chud37

+0

URI는 항상 '/ contact/telephone.png'형태로되어 있습니까 (예 ://)? – anubhava

관련 문제