2012-03-16 5 views
8

내 사이트에서 사용자가 도메인에서 사용자 이름을 사용할 수있는 기능을 추가하고 싶습니다.codeigniter에서 동적 하위 도메인을 만들고 싶습니까?

지금 codeigniter처럼 사용자가 사이트에 로그인하고 다른 작업을 수행 할 수있는 자신의 URL을 사용하도록하고 싶습니다. 예를 들어

:

i는 사용자가 자신의 자격 증명으로 로그인하고 범주를 추가 할 수 있습니다 www.username.mysite.com/login 정도 여기

www.username.mysite.com/category를 원하십니까. 그래서 나는 로그인과 카테고리로 내 사이트에 두 개의 컨트롤러가 있습니다.

경로 또는 .htaccess 경로로이를 수행하는 방법.

+0

가능한 중복 (HTTP : //stackoverflow.com/questions/586129/create-subdomains-on-the-fly-with-htaccess-php) –

답변

1

여기에 문제에 대한 설명이 나와 있습니다. http://www.joehayes.org/setting-up-wildcard-dns-for-subdomains.html

확인 링크에서 설명을 읽은 경우 모든 하위 도메인을 www가 먼저 리디렉션해야한다는 것을 알 수 있습니다. httpd.conf 파일에는 yourdomain.com 만 포함하는 가상 호스트 정의가있어 모든 요청을 DocumentRoot로 리디렉션합니다.

**ServerAlias yourdomain.com** 
ServerAdmin [email protected] 
DocumentRoot /home/yourdoma/public_html 
BytesLog domlogs/yourdomain.com-bytes_log 
ServerName www.yourdomain.com 
User yourdomain 
Group yourdomain 
CustomLog /usr/local/apache/domlogs/yourdomain.com combined 
ScriptAlias /cgi-bin/ /home/yourdomain/public_html/cgi-bin/ 

당신은 당신의 문서 루트 폴더에 모든 하위 도메인을 검색 할 ServerAlias에에게* .yourdomain.com에를 수정해야합니다. 그럼 당신은 mod_rewrite 또는 URL을 구문 분석 성공할 수 있어야합니다.

+0

죄송합니다, 정답이 아니므로, 필요한 것이 있습니다. –

+0

ok, 단지 호스트에 대한 ssh 액세스 권한이 있든, httpd.conf 파일에 대한 액세스 권한이 있는지 또는 apache 서버를 다시 시작했는지 여부를 지적하고자합니다. –

+0

아니요 액세스 권한이 없습니다. 하지만 서버와 동적 하위 도메인을 만드는 연결은 무엇입니까 ?? –

1

를 사용하여 서버의 가상 호스트 파일이 코드 :

<VirtualHost *:80> 
    DocumentRoot "/home/yourdoma/public_html/yourdomain" 
    ServerName yourdomain.com 
    ErrorLog "logs/yourdomain.local-error.log" 
    CustomLog "logs/yourdomain.local-access.log" common 
    <Directory "/home/yourdoma/public_html/yourdomain"> 
     AllowOverride All 
     Require all Granted 
    </Directory> 
</VirtualHost> 

<VirtualHost *:80> 
    DocumentRoot "/home/yourdoma/public_html/yourdomain" 
    ServerName dummy-host.yourdomain.com 
    ErrorLog "logs/yourdomain.com-error.log" 
    CustomLog "logs/yourdomain.com-access.log" common 
    ServerAlias *.yourdomain.com 
    <Directory "/home/yourdoma/public_html/yourdomain"> 
     AllowOverride All 
     Require all Granted 
    </Directory> 
</VirtualHost> 

하고 CodeIgniter의 설정 파일에 대한

: [htaccess로와 즉시 하위 도메인 (PHP) 만들기]의

$host = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''; 
$schema = isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'].'://' : 'http://'; 
$spl_host = explode("mysite.com", $host); 
$subhost = ''; 
if (count($spl_host) == 2) { 
    $subhost = current($spl_host); 
} 

if($host == $subhost.'mysite.com') { 
    $config['base_url'] = $schema.$subhost.'mysite.com'; 
} else { 
    $config['base_url'] = $schema.$host; 
} 
+0

동영상도 확인하십시오. https://youtu.be/518eRiSOTlY – Iftikhar

관련 문제