2014-03-04 5 views
0

htaccess 규칙을 nginx로 변환하려고합니다. 나는 nginx에 처음이고 온라인 변환기도 도움이되지 않는다. 공용 폴더 내부의 WWW 폴더HTACCESS to NGINX

<IfModule mod_rewrite.c> 
    RewriteEngine on 

    RewriteRule ^$ public/ [L] 
    RewriteRule (.*) public/$1 [L] 
</IfModule> 

에서

<IfModule mod_rewrite.c> 
    Options -MultiViews 
    RewriteEngine On 

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

사람이 nginx에 이러한 htaccess로 규칙을 변환하는 데 도움이 수 있을까?

+0

물론 비슷한 일을해야합니다. 지금까지 시도한 것은 무엇이며 예상대로 작동하지 않는 것은 무엇입니까? nginx 구성에 해당 줄을 추가하여 현재 위치를 볼 수 있습니까? – Carsten

+0

저는 완전히 nginx에 새로 왔습니다. 그러나 나는 [link] (http://winginx.com/en/htaccess)를 사용하여 변환하려고했는데 예상대로 작동하지 않습니다. –

+0

그런 다음 게시물에 결과를 추가하고 예상되는 내용을 설명하십시오. 나에게 생성 된 결과는 좋아 보인다. – Carsten

답변

0

어쩌면 당신의 설정은 다음과 같이 수 :

server { 
    listen *:80; 
    server_name source.example.com; 
    server_tokens off; 

    location/{ 
     root /var/www; 
    } 

    location /public { 
     root /var/www/public; # or so, put here your path to public dir 
    } 

    location @public { 
    proxy_read_timeout 180; 
    proxy_connect_timeout 180; 
    proxy_redirect  off; 

    proxy_set_header X-Forwarded-Proto $scheme; 
    proxy_set_header Host    $http_host; 
    proxy_set_header X-Real-IP   $remote_addr; 

    proxy_pass http://host/public; 
    } 
} 

나는 몇 가지 세부 사항을 잊어 버린하지만 어쩌면 당신은

+0

이것은 질문에 대답하지 않는 것 같습니다. 이것은 Apache 구문에서 OP가 제공 한 URL 리디렉션을 어떻게 구현합니까? – Carsten

+0

리다이렉션에 도움이 될 것이라고 생각했지만 네임은 mod_proxy를 사용할 가능성이 없다. htaccess에 대한 아이디어는 없다. –