하나의 호스팅으로 여러 사이트 운영

2년 전 조회 2,059

호스팅  A

 

도메인 D1 , D2,  D3,  

 

호스팅 A에 도메인 D1,D2,D3를 붙여서 운영하려고 합니다.

 

하나의 디비를 사용할 예정이며

 

도메인당 로고랑 타이틀 메타테그만 다르게 수정해서 사용하려고합니다.

head.sub.php 에서 아래 코드를 넣었는데 반영아 안됩니다 ㅠㅠ

도와주세요 ㅜㅜ

 

if($config['cf_add_meta'])

echo $config['cf_add_meta'].PHP_EOL;

if($_SERVER['SERVER_NAME'] == "D1.com"){ $title = "사이트제목1";}

if($_SERVER['SERVER_NAME'] == "D2.com"){ $title = "사이트제목2";}

if($_SERVER['SERVER_NAME'] == "D3.com"){ $title = "사이트제목3";}

 

 

답변 5개

$_SERVER['SERVER_NAME']

->

$_SERVER['HTTP_HOST']

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

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

Copy
<?php if ($config['cf_add_meta']): ?>
    <?php echo $config['cf_add_meta'].PHP_EOL; ?>
<?php endif; ?>

<?php
$serverName = $_SERVER['SERVER_NAME'];

if ($serverName == "D1.com") {$title = "사이트제목1"; $logo = "로고1.png";}

elseif ($serverName == "D2.com") {$title = "사이트제목2"; $logo = "로고2.png";}

elseif ($serverName == "D3.com") {$title = "사이트제목3"; $logo = "로고3.png";}

else {$title = "기본 사이트제목"; $logo = "기본로고.png";}
?>

 

Copy
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title><?php echo $title; ?></title>
    <link rel="stylesheet" href="스타일시트.css">
</head>
<body>
    <div id="logo">
        <img src="<?php echo $logo; ?>" alt="로고">
    </div>

    <!-- 나머지 웹 페이지 내용 -->

</body>
</html>

이런식으로 하면 되지 않을까 하는 생각입니다.

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

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

도메인주소가 존재하는지 strpos로 체크해보시는게 좋을듯 싶습니다.

그리고 도메인 주소가 잘 나오는지도 찍어서 확인해 보세요

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

답변에 대한 댓글 3개

도메인은 정상작동 됩니다. 도메인전부 접속해도 title이 동일하게 나옵니다 ㅠㅠ
if(strpos($_SERVER['SERVER_NAME'],"D1.com")){ $title = "사이트제목1";}

else if(strpos($_SERVER['SERVER_NAME'],"D2.com")){ $title = "사이트제목2";}

else if(strpos($_SERVER['SERVER_NAME'],"D3.com")){ $title = "사이트제목3";}

이런식으로 변경해서 해보세요
그것도 반영이 안됩니다.



<?php
$host_post = strpos($_SERVER['HTTP_HOST'], 'd1.com');
if($host_post!==false){$title = "사이트제목1";
?>
<?php
}
?>
이렇게도 해봤는데 반영이 안되네요 ㅠ

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

지금 if 하신건 정확하게 일치해야하는거라서

https://zxchsr.tistory.com/222 참고하셔서 문자열이 포함되었을 경우로 해서 작업을 하시면 되실거 같습니다.

 

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

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

www가 붙어서 들어오는거 아닐까요?
$domain = str_replace("www.","",$_SERVER['SERVER_NAME'],4);
하신후에
if($domain == "D1.com"){ $title = "사이트제목1";}
if($domain == "D2.com"){ $title = "사이트제목2";}
if($domain == "D3.com"){ $title = "사이트제목3";}
로 하시면 될듯 합니다.
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

301 리다이렉션으로 www 제거했어요
반영이 안되네요 ㅠㅠ
$domain = str_replace("www.","",$_SERVER['SERVER_NAME']);
var_dump($domain);
하셔서 개별사이트 도메인이 찍히는지 보셔야 할듯 합니다.

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

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

로그인
🐛 버그신고