2014-07-19 4 views
1

죄송합니다. 나는 .htaccess를 처음 사용합니다. 내 웹 사이트 (소셜 엔진 기반) 메인 페이지를 일부 html 페이지 으로 리디렉션하고 싶습니다. 예를 들어 누군가 www.example.com/을 입력하면 www.example.com/main.html 으로 리디렉션됩니다.하지만 다른 기능이 작동되기를 원합니다. 아무렇지도 않게 입력하면 www.example.com/login/ 이 로그인 페이지로 리디렉션되고 로그인하면 이전에 작동했던 것과 똑같이 작동합니다. 내가 www.example.com/main.html로 리디렉션있어 www.example.com/ 입력하면소셜 엔진을 기반으로 사이트 URL을 원하는 html 파일로 리디렉션하는 방법

# $Id: .htaccess 9977 2013-03-19 20:51:56Z john $ 

<IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    RewriteEngine On 

    RewriteCond %{REQUEST_URI} ^/$ 
    RewriteRule (.*) main.html [L,QSA] 

    # Get rid of index.php 
    RewriteCond %{REQUEST_URI} /index\.php 
    RewriteRule (.*) index.php?rewrite=2 [L,QSA] 

    # Rewrite all directory-looking urls 
    RewriteCond %{REQUEST_URI} /$ 
    RewriteRule (.*) index.php?rewrite=1 [L,QSA] 

    # Try to route missing files 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} public\/ [OR] 
    RewriteCond %{REQUEST_FILENAME} \.(jpg|gif|png|ico|flv|htm|html|php|css|js)$ 
    RewriteRule . - [L] 

    # If the file doesn't exist, rewrite to index 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?rewrite=1 [L,QSA] 

</IfModule> 

# sends requests /index.php/path/to/module/ to "index.php" 
# AcceptPathInfo On 

# @todo This may not be effective in some cases 
FileETag Size 

<IfModule mod_deflate.c> 
    AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript 
</IfModule> 

하지만 문제는이 같은 좋은 일이 처음입니다 - 아래 주어진 나는 htaccess로 쓰기 그리고 www.example.com/login/을 입력하면 로그인 페이지 으로 리디렉션되었지만 로그인이 인증되어 사인팅을 받으면 문제가 발생합니다. socialengine이 www.example.com으로 리다이렉트되는 방식으로 작동 할 수 있습니다. 다시 내가 example.com/main.html로 리다이렉트되었는데 이번에는 싫어. 이 문제를 해결할 방법을 제안 해주세요. 덕분에, 감사

답변

0

는 다음과 같은 규칙을 시도해보십시오

RewriteRule ^$ main.html [L,QSA]

그것은 단지 루트 URL을 리디렉션합니다.

+0

도움을 주셔서 감사하지만 여전히 문제는 동일합니다 ... 로그인 페이지 (www.example.com/login) 이후에 노래를 들으면 www.example.com/main.html로 리디렉션되었습니다. socialengine은 www.example.com/main.com으로 페이지를 리디렉션하기 때문에 htaccess가 자동으로 www.example.com으로 URL을 변경하기 때문에 시간을 단축하고 싶습니다. 그래서 기본적으로 무엇을 알아 냈습니까? 나는 www로 리디렉션하고 싶습니다. example.com/main.html "을 입력하면"www.example.com/ "이라고 입력하면 htaccess에"www.example.com "이라는 URL이 있으면 기본적으로 내 사이트의 홈 페이지에 남아있게됩니다. 내 URL에 "/"(frontslash)에 대한 필터 – XxANxX

+0

정규식 규칙을 약간 수정하여이를 달성 할 수 있다고 생각합니다. – Salman