테스트 사이트 - 개발 중인 베타 버전입니다

rewrite모듈 작동이 안됩니다. 채택완료

hazkiryo 5년 전 조회 2,237

domain.com/profile.php?mb_id=userid 경로를 domain.com/userid로 나오게 하고싶습니다.

 

.htaccess 파일

</p>

<p>#### 그누보드5 rewrite BEGIN #####

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

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]

<span style="color:#c0392b;">RewriteRule ^([^/]*)$ bbs/profile.php?mb_id=$1&rewrite=1      [QSA,L] // 추가된 소스</span>

</IfModule>

#### 그누보드5 rewrite END #####</p>

<p>

 

기존소스에 RewriteRule ^([^/]*)$ bbs/profile.php?mb_id=$1&rewrite=1 한줄만 추가했습니다.

mb_id로 변수값을 줘서 닉네임과 아이디가 뜨게하려고 하는 간단한 페이지 입니다.

bbs폴더에 profile.php 파일을 생성해주고 내용은 아래와 같습니다

 

</p>

<p><?php

include_once('./_common.php');

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>

<p>include_once(G5_PATH.'/head.sub.php');

?></p>

<p>        <div class="main-container">

            <section class="bg--secondary space--sm">

                <div class="container">

                    <div class="row justify-content-center">

                        <div class="col-lg-8">

                            <div class="boxed boxed--lg boxed--border">

                                <div class="text-block text-center">

                                    <span class="h5"><?php echo get_text($member['mb_nick']) ?></span>

                                    <span><?php echo $member['mb_id'] ?></span>

                                </div>

                            </div>

                        </div>

                    </div>

                </div>

            </section>

            

<?php

include_once(G5_PATH.'/tail.sub.php');

?></p>

<p>

 

/bbs/profile.php에 뭔가 변수를 따로 설정해줘야하나요?

예를들어 아이디가 test일 경우 domain.com/test로 접속하면 프로필페이지가 떠야하는데 안뜨네요.

도움주시면 감사하겠습니다 ㅠㅠ

 

 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

15행의 아래 정규식때문에 아래와 같이 서브폴드처럼 작성해주고 먼저오게 해줘야지 작동합니다.

게시판 갯수 및 이름이 확정되어 있다면 15행을 적절하게 수정해주시고 게시판이름 및 shop, rss등을 제한 아이디로 만드셔야될것 같습니다.

 

</p>

<p><code>RewriteRule ^p/([0-9a-zA-Z_]+)$ bbs/profile.php?mb_id=</code><code>$1</code><code>&rewrite=1      [QSA,L]</code></p>

<p><code>RewriteRule ^([0-9a-zA-Z_]+)$  bbs/board.php?bo_table=</code><code>$1</code><code>&rewrite=1      [QSA,L]</code></p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인