웹마스터 팁

1. 숫자 문서의 짧은 주소 문제

http://abc.com/wiki/entry/Front_Page 처럼 문자로만 이루어져있거나

http://abc.com/wiki/entry/XE_1 처럼 숫자 + 문자가 혼합된 경우에는 짧은 주소가 아무 이상 없이 동작하나

 

http://abc.com/wiki/entry/123 과 같이 숫자로만 이루어진 문서의 경우 404 에러만 뜨는 문제가 있습니다.

http://abc.com/index.php?mid=wiki&entry=123 과 같이 짧은 주소가 아닌 경우에는 정상 동작하고요.

 

문제의 원인은 Rewrite Rule입니다.

nginx 기준으로 

# vid + mid + document link
rewrite ^/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)$ /index.php?vid=$1&mid=$2&document_srl=$3 last;

# mid + entry title
rewrite ^/([a-zA-Z0-9_]+)/entry/(.+)$ /index.php?mid=$1&entry=$2 last;

 

이 부분이 있는데,  vid + mid + document 형태의 짧은 주소를 처리하는 부분 때문에 발생하는 문제입니다. 문서명이 문자나 문자와 숫자 혼합시에는 세번째 [0-9] 부분에 해당되지 않기 때문에 이 부분은 건너뛰고 다음에 위키용 짧은 주소를 처리하는 부분으로 넘어가는데 문서명이 숫자로 이루어 진 경우에는 저기에 걸려버려서

 

http://abc.com/index.php?mid=wiki&entry=123 이 아닌 http://abc.com/index.php?vid=wiki&mid=entry&entry=123 로 처리를 해버리는 관계로 발생하는 문제입니다.

 

해결법은 단순히 

 

# mid + entry title
rewrite ^/([a-zA-Z0-9_]+)/entry/(.+)$ /index.php?mid=$1&entry=$2 last;

# vid + mid + document link
rewrite ^/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([0-9]+)$ /index.php?vid=$1&mid=$2&document_srl=$3 last;

 

이 둘의 순서만 바꿔주셔도 간단하게 해결됩니다.

---

2. 미디어위키 문법 사용 시 내부 링크 문제

 

XE 위키에서 미디어위키 문법을 적용하여 사용 (그냥은 안되고 https://www.xpressengine.com/forum/22080538 이 방법대로 수정 필요)시 내부 링크 기능에 문제가 있었습니다.

 

짧은 주소 사용시 기준으로 http://abc.com/위키모듈/entry/문서명 으로 연결이 되어야 하는데, 링크에 문제가 있어서 위키 메인 등에서 내부 링크를 클릭시 http://abc.com/문서명 로 연결이 되버리는 문제였죠.

 

https://www.xpressengine.com/22209922 이 글처럼 임시 방편으로 바로가기를 이용하는 방법이 있지만 위키 스킨에서 위키 메인으로 이동한다거나 하면 다시 문제가 재발하는 문제가 있었습니다.

 

원인은 미디어위키 문법 파서에 있는데 파.싱을 통해 링크를 만들어주는 과정중에 [[내부 링크]] 형태로 링크가 걸렸으면 '내부 링크' 에 해당되는 부분을 $content로 넘겨주고 여기서 다시 공백이 있을 경우 공백을 _로 바꿔 '내부_링크' 형태로 만들어 $href에 넣어준 뒤 다른 작업을 거쳐 마지막에 <a href=\"$href\" 형태로 넘겨주다보니 발생하는 문제입니다.

 

해결방법은 위키 모듈 폴더로 들어가 /lib/MediaWikiParser.class.php의 335번째 줄 다음에

 

// 내부 링크 버그 수정.
else
{
     $href = getUrl('mid', Context::get('mid'), 'entry', $href);
}

 

를 추가해주시고 저장, 적용해주시면 해결됩니다.

 

제목 글쓴이 날짜
대구오피 ⦑오피사이트.NET⦒ 대구오피 대구OP 대구건마 대구오피 koykoyah 2025.02.23
서초오피 서초OP ⦑오피쓰.COM⦒ 서초휴게텔 서초오피 서초오피 koykoyah 2025.02.23
여의도오피 ⦑출장안마사이트.COM⦒ 여의도오피 여의도출장마사지 여의도오피 여의도OP koykoyah 2025.02.23
제주도오피 제주도출장안마 ⦑오피쓰.COM⦒ 제주도OP 제주도오피 제주도오피 koykoyah 2025.02.23
제주오피 제주OP ⦑오피쓰주소.COM⦒ 제주휴게텔 제주오피 제주오피 koykoyah 2025.02.23
부산오피 ⦑출장안마사이트.COM⦒ 부산OP 부산오피 부산출장샵 부산오피 koykoyah 2025.02.23
서면오피 서면출장안마 ⦑오피.CLUB⦒ 서면OP 서면오피 서면오피 koykoyah 2025.02.23
선릉오피 ⦑오피쓰주소.COM⦒ 선릉OP 선릉오피 선릉출장샵 선릉오피 koykoyah 2025.02.23
천안오피 ⦑오피쓰.COM⦒ 천안마사지 천안오피 천안오피 천안OP koykoyah 2025.02.23
세종오피 ⦑오피.CLUB⦒ 세종OP 세종오피 세종출장샵 세종오피 koykoyah 2025.02.23
홍대오피 ⦑출장안마사이트.COM⦒ 홍대마사지 홍대오피 홍대오피 홍대OP koykoyah 2025.02.23
해운대오피 ⦑출장마사지안내.COM⦒ 해운대OP 해운대오피 해운대출장샵 해운대오피 koykoyah 2025.02.23
부산오피 부산출장안마 ⦑오피사이트.NET⦒ 부산OP 부산오피 부산오피 koykoyah 2025.02.23
수원오피 ⦑오피쓰주소.COM⦒ 수원OP 수원오피 수원출장샵 수원오피 koykoyah 2025.02.23
동대문오피 동대문오피 ⦑오피쓰.COM⦒ 동대문OP 동대문스파 동대문오피 koykoyah 2025.02.23
동대문오피 동대문오피 ⦑오피.CLUB⦒ 동대문OP 동대문스파 동대문오피 koykoyah 2025.02.23
동대문오피 ⦑오피.CLUB⦒ 동대문OP 동대문오피 동대문출장샵 동대문오피 koykoyah 2025.02.23
판교오피 ⦑오피쓰주소.COM⦒ 판교OP 판교오피 판교출장샵 판교오피 koykoyah 2025.02.23
동두천오피 동두천OP ⦑오피쓰.COM⦒ 동두천휴게텔 동두천오피 동두천오피 koykoyah 2025.02.23
용인오피 ⦑오피사이트.NET⦒ 용인OP 용인오피 용인출장샵 용인오피 koykoyah 2025.02.23