#### 그누보드5 rewrite BEGIN #####
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# a.co.kr 접속시 https://b.com 으로 리디렉션
RewriteCond %{HTTP_HOST} ^a\.co\.kr$ [NC]
RewriteRule ^(.*)$ https://b.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^shop/list-([0-9a-z]+)$ shop/list.php?ca_id=$1&rewrite=1 [QSA,L]
RewriteRule ^shop/type-([0-9a-z]+)$ shop/listtype.php?type=$1&rewrite=1 [QSA,L]
RewriteRule ^shop/([0-9a-zA-Z_\-]+)$ shop/item.php?it_id=$1&rewrite=1 [QSA,L]
RewriteRule ^shop/([^/]+)/$ shop/item.php?it_seo_title=$1&rewrite=1 [QSA,L]
RewriteRule ^content/([0-9a-zA-Z_]+)$ bbs/content.php?co_id=$1&rewrite=1 [QSA,L]
RewriteRule ^content/([^/]+)/$ bbs/content.php?co_seo_title=$1&rewrite=1 [QSA,L]
RewriteRule ^rss/([0-9a-zA-Z_]+)$ bbs/rss.php?bo_table=$1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)$ bbs/board.php?bo_table=$1&rewrite=1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)/([^/]+)/$ bbs/board.php?bo_table=$1&wr_seo_title=$2&rewrite=1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)/write$ bbs/write.php?bo_table=$1&rewrite=1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)/([0-9]+)$ bbs/board.php?bo_table=$1&wr_id=$2&rewrite=1 [QSA,L]
</IfModule>
#### 그누보드5 rewrite END #####
기존 htaccess 에
RewriteCond %{HTTP_HOST} ^a\.co\.kr$ [NC]
RewriteRule ^(.*)$ https://b.com/$1 [R=301,L]
위 코드 2줄을 추가했는데요.
카페24 서버 사용중이고, 하나의 서버에 2개의 도메인 a.co.kr 과 b.com 이렇게 연결된 상태입니다. 도메인은 둘다 ssl 인증도 해둔상태입니다.
그런데 로그인이 풀리는 이슈로 인해 한 도메인으로만 접속이 되게 하기위해 리디렉션을 걸어둔 상태인데요....
크롬, 웨일, 파폭 모두 a.co.kr 접속시 https://b.com 으로 이동이 잘 됩니다.
서브페이지로 접속해도 이동이 잘 되고있는데요. ex) a.co.kr/shop/mypage.php 로 접속해도 https://b.com/bbs/login.php?url~~~~~ 로그인 페이지로 이동되고, 로그인하면 b.com/shop/마이페이지로이동도 잘 됩니다.
그런데 엣지에서만 적용이 안되고 있습니다.
엣지에서 a.co.kr 접속시 ERR_TOO_MANY_REDIRECTS 가 떠서 해당 에러관련해서 검색해보니 쿠키 삭제 해보라고 해서 쿠키도 지워봤지만 해결이 안되고 있습니다.
심지어 엣지에서는 b.com 으로 접속하면 https 가 붙지 않은채 안전하지않음이 뜹니다.
추가한 2줄을 지우고 엣지에서 a.co.kr 또는 b.com 으로 접속하면 둘 다 접속은 됩니다. 근데 SSL적용은 안된채로 접속이 됩니다.
대체 엣지만 왜 그런건지 알 수가 없어 문의 남겨봅니다ㅠ
답변 3개 / 댓글 7개
다른 브라우저에서는 정상적으로 작동하고있다면 엣지 브라우저 안에서 일어난 문제일 확률이 큽니다.
URL 남겨주시면 제쪽에서도 확인해보겠습니다.
답변에 대한 댓글 4개
해당 도메인을 올려 보시는 것이 좋을 듯 합니다.
답변에 대한 댓글 1개
챗GPT답변입니다. 궁금해서 물어봤는데 아래와 같은 답변을 나왔는데 뭔말인지 모르겠네요.
참고하세요..
그누보드5의 rewrite 규칙은 일반적으로 Apache 모듈인 mod_rewrite를 사용하여 작성됩니다.
하지만 엣지는 IIS (Internet Information Services) 웹 서버를 사용하므로 Apache와 다른 구성을 가지고 있습니다.
이러한 차이로 인해 Apache에서는 작동하는 rewrite 규칙이 IIS에서는 작동하지 않을 수 있습니다.
따라서 IIS에서도 작동할 수 있는 rewrite 규칙을 작성해야 합니다.
아래는 IIS에서 사용 가능한 예시입니다.
<rule name="Redirect a.co.kr to b.com" stopProcessing="true">
<match url="^(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^a\.co\.kr$" />
</conditions>
<action type="Redirect" url="https://b.com/{R:1}" redirectType="Permanent" />
</rule>
<rule name="shop/list rewrite rule" stopProcessing="true">
<match url="^shop/list-([0-9a-z]+)$" />
<action type="Rewrite" url="shop/list.php?ca_id={R:1}&rewrite=1" />
</rule>
<rule name="shop/type rewrite rule" stopProcessing="true">
<match url="^shop/type-([0-9a-z]+)$" />
<action type="Rewrite" url="shop/listtype.php?type={R:1}&rewrite=1" />
</rule>
<rule name="shop/item rewrite rule" stopProcessing="true">
<match url="^shop/([0-9a-zA-Z_\-]+)$" />
<action type="Rewrite" url="shop/item.php?it_id={R:1}&rewrite=1" />
</rule>
<rule name="shop/item seo rewrite rule" stopProcessing="true">
<match url="^shop/([^/]+)/$" />
<action type="Rewrite" url="shop/item.php?it_seo_title={R:1}&rewrite=1" />
</rule>
<rule name="bbs/content rewrite rule" stopProcessing="true">
<match url="^content/([0-9a-zA-Z_]+)$" />
<action type="Rewrite" url="bbs/content.php?co_id={R:1}&rewrite=1" />
</rule>
<rule name="bbs/content seo rewrite rule" stopProcessing="true">
<match url="^content/([^/]+)/$" />
<action type="Rewrite" url="bbs/content.php?co_seo_title={R:1}&rewrite=1" />
</rule>
<rule name="bbs/rss rewrite rule" stopProcessing="true">
<match url="^rss/([0-9a-zA-Z_]+)$" />
<action type="Rewrite" url="bbs/rss.php?bo_table={R:1}" />
</rule>
<rule name="bbs/board rewrite rule" stopProcessing="true">
<match url="^([0-9a-zA-Z_]+)$" />
<action type="Rewrite" url="bbs/board.php?bo_table={R:1}&rewrite=1" />
</rule>
<rule name="bbs/board seo rewrite rule" stopProcessing="true">
<match url
답변에 대한 댓글 2개
이 rewrite 규칙이 Edge에서 작동하지 않는 이유는 아마도 mod_rewrite 모듈이 Edge에서 활성화되어 있지 않기 때문일 것입니다.
Edge에서 mod_rewrite 모듈을 사용하도록 설정하려면, httpd.conf 파일에서 "LoadModule rewrite_module modules/mod_rewrite.so"와 같은 줄을 찾아 주석 처리된 상태에서 제거하고 모듈을 로드하도록 설정해야 합니다.
그러나 이 작업은 서버에서의 권한이 필요하고, 서버 구성에 따라 다를 수 있으므로 서버 관리자나 호스팅 업체에게 문의하시는 것이 좋습니다.
답변을 작성하려면 로그인이 필요합니다.