2012-12-07 3 views
0

저는 많은 프로젝트를 로컬에서 작업하고 있습니다. 내 프로젝트를 모두 포함하는 내 폴더를 참조하도록 내 아파치 루트를 설정했습니다. 따라서 localhost은 간단히 저를 데려옵니다..htaccess 프로젝트 루트

로컬 호스트의 하위 폴더 (루트 임)에 다시 쓰기 규칙을 추가하고 있으므로 /은 localhost가 아니라 PROJECT 루트를 나타냅니다. 내 구조의

예 :이 src="/img/picture.jpg" 같은 뿌리 링크를 제기 할 프로젝트 내부

localhost/a-very-nice-projekt/ 

. 링크를 변경할 필요없이 폴더를 쉽게 이동할 수 있습니다. 또한 링크가 항상 프로젝트 루트를 참조하므로 내 navbar 및 헤더의 php include를 사용할 수 있습니다. 난 당신이 정말 당신이 최소한의 .htaccess를 통해 무엇을하려고 할 수 있다고 생각하지 않습니다 ...

+1

¿ 사용중인 로컬 서버는 무엇입니까? 대부분의 사람들이 당신이 설명하는 방식으로 폴더를 사용하기 때문에 .htaccess를 수정할 필요가 없으므로 폴더를 만들면됩니다. –

+0

아파치를 사용하고 있습니다! 내 error_log를 볼 때 아파치가 잘못된 폴더에서 볼 수 있음을 분명히 볼 수 있습니다. [Fri Dec 07 14:17:31 2012] [오류] [클라이언트 192.168.0.12] 파일이 존재하지 않습니다 :/Users/Anton/Sites/img, referer : http://192.168.0.12/nyanovium/portfolio.php – user1885523

답변

2

는 인터넷 검색과 코드를 많이 시도하지만 난 조금 틀렸다 생각합니다. 귀하의 경우에는 localhost가 도메인이고 링크의 선행 슬래시는 브라우저가 도메인에 상대적인 경로에서 리소스를 가져 오도록 지시합니다. 다른 폴더의 다른 규칙은 실제로이 영향을 줄 수 없습니다.

다른 포트에 다양한 가상 호스트를 만들면 다른 사이트로 작동하는 것이 가장 좋습니다. httpd.conf 파일에서 각 프로젝트에 대해 하나의 가상 호스트를 만듭니다.

Listen 8081 
NameVirtualHost *:8081 
<VirtualHost *:8081> 
    DocumentRoot "C:\Path\to\project" 
    <Directory "C:\Path\to\project"> 
     DirectoryIndex index.php 
     AllowOverride None 
     Order allow,deny 
     Allow from all 
    </Directory> 
</VirtualHost> 

그러면이 프로젝트는 브라우저에서 http://localhost:8081/으로 액세스됩니다. 모든 경로가 예상대로 작동하므로 갈 수 있어야합니다.

+0

솔루션을 올바른 방법으로 사용하기 때문에 이것을 최종 답으로 표시하겠습니다. 그것은 나를 위해 일하는 것은 아니지만, 나는 그것이 Mac OSX의 localhost-config와 관련이 있다고 믿습니다. 누군가 듣고있는 아이디어가 있다면. Mac OSX 용으로 google을 사용합니다 ... – user1885523

관련 문제