CodeIgniter에서 도메인 이름 확인

2024 단어
최근에 SEO를 편리하게 하기 위해 2급 도메인을 사용해야 하는 프로젝트를 만났습니다. 코드Igniter 프레임워크를 사용했기 때문에 이 프레임워크는 유연한 루트 기능을 제공했지만 2급 도메인을 실현할 수 없습니다.많은 자료를 조회한 후, 몇 차례의 테스트를 거쳐 해결 방법을 얻어냈다.이 예는 www.mysite를 사용합니다.com 이 가짜 도메인 이름.
1단계: 먼저 httpd.conf에서virtualhost 만들기


  ServerAdmin [email protected]
  DocumentRoot "D:/www/cms"
  ServerName www.mysite.com
  ServerAlias *.mysite.com #          
  ErrorLog "logs/mysite.com-error.log"
  CustomLog "logs/mysite.com.log" common


2단계: 이러한 효과를 실현하려면 다음과 같이 하십시오.http://www.mysite.com/category/news/1.html  =====>  http://category.mysite.com/news/1.html이domain에 정상적으로 접근할 수 있도록 hosts 파일을 수정해야 합니다

127.0.0.1 www.mysite.com
127.0.0.1 category.mysite.com


3단계: 수정: system/core/URI.php의set_uri_string 방법

/**
 * Set the URI String
 *
 * @access public
 * @param string
 * @return string
 */
function _set_uri_string($str)
{
 // Filter out control characters
 $str = remove_invisible_characters($str, FALSE);
 // If the URI contains only a slash we'll kill it
 $this->uri_string = ($str == '/') ? '' : $str;
 // Add by fengyun for url rewrite at 2013-1-25 1:02:27
 @include(APPPATH.'config/domain'.EXT);
 $arrServerName = explode('.', $_SERVER['SERVER_NAME']);
 if (in_array($arrServerName[0], $domain)) {
 $this->uri_string = '/' . $arrServerName[0]."/" . $this->uri_string;
 }
}


여기에는 주로 URL이 CI에게 정확하게 이해될 수 있도록 하기 위해서다.
4단계: 응용 프로그램/config/에서domain을 만듭니다.php 파일.내용은 다음과 같습니다.

 
 

이로써 거의 완성되었지만, 사이트url () 을 사용할 때, 2급 도메인을 사용하려면 따로 처리해야 합니다.

좋은 웹페이지 즐겨찾기