./blog
./news
./about
및
./contact
실제 폴더입니다 연락처 페이지가
. 홈페이지, 블로그 및 뉴스은 페이지가 매겨집니다. 약 및 문의은 페이지 매김이없고 페이지 매김이 아닙니다.여러 htaccess로 다시 쓰기 규칙
다음 (A) 및 (B)를 수행하려면 htaccess 다시 쓰기 규칙이 필요합니다. 나는 (A)로만 진행했고 htaccess 파일은 사이트 루트에 있습니다. m.website.com/blog/page/2
등 -m.website.com/blog
m.website.com/blog/index.php?page=2
재기록에 m.website.com/page/2
등m.website.com/blog/index.php?page=1
재기록에 (A)
m.website.com/index.php?page=1
재기록m.website.com
에m.website.com/index.php?page=2
재기록
m.website.com/news/page/2
등
문제에 m.website.com/news
m.website.com/news/index.php?page=2
재 작성에 m.website.com/news/index.php?page=1
재 작성 : 아래 내가 위의에 사용하고있어,하지만 난 단지 그것은 홈페이지 일하고있어 현재입니다. 나는 블로그과 뉴스 페이지를 포함하는 규칙을 결합하는 법도 모르겠다. 또한 m.website.com
과 m.website.com/page/1
이 모두 사용 중이므로 링크가 중복됩니다. 나는 도처에 /page/1
를 제거해야한다. 페이지 매김은 2 페이지에서만 시작해야합니다. RedirectMatch를 사용하여 제거하려고했으나 작동하지 않아서 주석 처리했습니다. RewriteEngine On
RewriteBase/
RewriteRule ^page/(.*) index.php?page=$1 [NC]
#RedirectMatch 301 ^/page/1/$ http://m.website.com/
이미 꽤 URL을 허용하고 집에 자신의 postIDs 각 기사에 대한
- (B), 블로그 또는 뉴스 페이지의 형식은
http://m.website.com/2012/03/the-post-title
- 입니다. 클릭하면 htaccess는
/2012/03/the-post-title
문자열로 permalink.php를 쿼리하여 postID를 얻은 다음을 엽니 다. 0 이지만은 주소 표시 줄의 주소가http://m.website.com/2012/03/the-post-title
이고 홈 페이지, 블로그 페이지 또는 뉴스 페이지가 전체 기사를 표시합니다.
문제 :이 검색되었고, 나는 위의 (B)에 대해 이동하는 방법을 정확히 모르겠어요하지만 난 그게 가능 알고. 결국 A와 B에 대한 모든 규칙은 사이트 루트의 동일한 htaccess 파일에 있습니다.
감사합니다.
가장 깨끗한 솔루션은 정적 리소스가 아닌 모든 요청을 PHP 스크립트로 리디렉션하는 단일 다시 쓰기 규칙 만 사용하여 모든 URL 구문 분석 등을 수행합니다. – ThiefMaster
@ThiefMaster Thanks. 그러나 홈 페이지, 블로그 페이지 및 다른 쿼리와 물건을 가지고있는 뉴스 페이지에 대해 3 개의 PHP 파일 (index.php)이 있습니다. 단일 다시 쓰기 규칙은 어떻게 작동합니까? – Cogicero
다른 PHP 파일을 통해 모든 것을 라우팅 한 다음 적절한 파일을 포함시킵니다. – ThiefMaster