2013-07-13 2 views
1

안녕하세요 여전히 Linux (우분투 10.04 lts 실행 중) & nginx (1.4.1 실행) 도움을 주셔서 감사합니다. 내가하고 싶은 것을 찾았지만 철자를 쓰지 않았습니다. 내 편안함 수준에 충분할 것입니다.301 Nginx에서 영구 리디렉션 재 작성

나는 변경할 수없는 다른 웹 사이트에 많은 링크를 가지고 있기 때문에 나는 site1.com을 옮겼으며 모든 내용을 site2.com으로 옮겼으며 영구 301 리디렉션이 필요합니다.

내가 찾은 최고의 자습서는 다음과 같이 뭔가를 얘기했습니다

### redirect beta.cyberciti.biz$URI to www.cyberciti.biz$URI with 301 ### 
server { 
    listen  75.126.153.206:80; 
    server_name beta.cyberciti.biz; 
    root  /usr/local/nginx/html; 
    index  index.html; 
    rewrite ^$scheme://www.cyberciti.biz$request_uri permanent; 
    # .... 
} 

그러나 나는이 모든 블록은 변수를 변경하거나 내가 서버를 변경해야 하죠 경우 추가 여부에 혼란 스러워요 {...} 차단은 이미 내 conf 파일에 있습니다.

#  server { 
#   listen  localhost:110; 
#   protocol pop3; 
#   proxy  on; 
#  } 
# 
#  server { 
#   listen  localhost:143; 
#   protocol imap; 
#   proxy  on; 
#  } 

현재 nginx.conf가 .. 내 conf의 파일에 두 개의 서버 {...}를 가지고 있지만 그들은 모두 .. (아래 참조)가 주석하는 경우 그들이 거기에 왜하지 않도록 주석 처리되어 :

user www-data; 
worker_processes 3; 

error_log /var/log/nginx/error.log; 
pid  /var/run/nginx.pid; 

events { 
worker_connections 1024; 
# multi_accept on; 
} 

http { 
include  /etc/nginx/mime.types; 

access_log /var/log/nginx/access.log; 

sendfile  on; 
#tcp_nopush  on; 

#keepalive_timeout 0; 
keepalive_timeout 65; 
tcp_nodelay  on; 

gzip on; 
gzip_disable "MSIE [1-6]\.(?!.*SV1)"; 

include /etc/nginx/conf.d/*.conf; 
include /etc/nginx/sites-enabled/*; 
} 



# mail { 
#  # See sample authentication script at: 
#  # http://wiki.nginx.org/NginxImapAuthenticateWithApachePhpScript 
# 
#  # auth_http localhost/auth.php; 
#  # pop3_capabilities "TOP" "USER"; 
#  # imap_capabilities "IMAP4rev1" "UIDPLUS"; 
# 
#  server { 
#   listen  localhost:110; 
#   protocol pop3; 
#   proxy  on; 
#  } 
# 
#  server { 
#   listen  localhost:143; 
#   protocol imap; 
#   proxy  on; 
#  } 
# } 

내가 http {} 블록 아래에 댓글을 달았습니다. 사이트 1에서의 nginx 변화 server_name에서

답변

3

이 사이트 2 다음 새 사이트 1 블록을 만들려면

server { 
    listen 80; 
    server_name site1.com; 
    location/{ 
     return 301 $scheme://site2.com$request_uri; 
    } 
} 
+0

나는 것을 추가 할 때이 얻을 : 루트 @ 메일 ~ : 서비스의 nginx가 다시 시작의 nginx를 다시 시작 : [emerg가] : /etc/nginx/nginx.conf:31에있는 알려지지 않은 지시문 "server" 구성 파일 /etc/nginx/nginx.conf 테스트가 실패했습니다. – user2156473

+0

내 서버에서 도메인 영역을 삭제하지 않았으므로 이미 모든 파일을 이동했지만 파일 및 폴더가 사라졌습니다. 문제가 될 수 있습니까? – user2156473

+0

다른 서버 안에'server'를 넣고 있습니까? 그게 효과가 없기 때문에, 다른'server' 블록 밖에서 만들어야 할 필요가 있습니다.'nginx.conf' 전체 또는이 사이트에 관한 부분을 붙여 줄 수 있습니까? –