a.php 파일이 실행 되지 않을 경우

vi로 파일을 열어서 도스에서 만든 파일인지 확인 후, 

쉘에 dos2unix a.php 실행 하면 된다

​[참고] 시스템에 dos2unix 가 없을 경우  yum -y install dos2unix  (Redhat 계열)​


출처 : http://seobangnim.digimoon.net/zbxe/?mid=PHP&page=1&document_srl=586978

 

<?
$mobileKeyWords = array ('iPhone','iPod','BlackBerry','Android','Windows CE','Windows CE;','LG','MOT','SAMSUNG','SonyEricsson','Mobile','Symbian','Opera Mobi','Opera Mini','IEmobile');

for($i = 0 ; $i < count($mobileKeyWords) ; $i++) {

if(strpos($_SERVER['HTTP_USER_AGENT'],$mobileKeyWords[$i]) == true) {

header("Location: http://모바일페이지경로");

exit;

}
}

if(strpos($HTTP_HOST, '접속도메인') == strlen($HTTP_HOST)-strlen('접속도메인)) {
    header("location:http://연결할URL".$REQUEST_URI);
    exit;
}
else
header('Location: 예외처리경로<http형식의 절대주소로기입>');


?>

 

1. JDK(java) 설치

rpm -ivh jdk-7u40-linux-x64.rpm

설치 확인 : rpm -qa | grep jdk
whereis java (jdk 가 설치된 경로 확인)

cd /usr/java
mv jdk1.7.0_40 /usr/local/java
vi /etc/profile 해서 아래의 내용을 최하단에 추가할 것!
#JAVA JDK7
export JAVA_HOME=/usr/local/java
export CATALINA_HOME=/usr/local/tomcat
export PATH=$PATH:/usr/local/bin:$JAVA_HOME/bin:$CATALINA_HOME/bin


source /etc/profile (/etc/profile의 내용을 적용시킴)
javac --version   (java가 연동되었는지 버전을 확인하는 것으로 검증)
2. Apache Tomcat 설치

다운로드 사이트 http://tomcat.apache.org

tar zxxf apache-tomcat-7.0.37.tar.gz
cd apache-tomcat-7.0.37
mv apache-tomcat-7.0.37 /usr/local/
cd /usr/local
ln -s apache-tomcat-7.0.37/ tomcat
vi /usr/local/tomcat/conf/server.xml  해서 아래의 내용을 기존에 등록된 </Host> 하단에 추가!

        <Host name="hasudo24.com" appBase="/home/hasudo24/public_html"
              unpackWARs="true" autoDeploy="true">
         <context path="" docBase="/home/hasudo24/public_html"></context>
        </Host>

만일 다수의 계정을 Port 별로 추가하고 싶다면 아래의 <Service> 항목을 최하단에 추가

<Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <Connector port="8012" protocol="AJP/1.3" redirectPort="8443" />
    <Engine name="Catalina" defaultHost="localhost">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>
      <Host name="sudo04.com"  appBase="/home/sudo04/public_html"
            unpackWARs="true" autoDeploy="true">
            <context path="" docBase="/home/sudo04/public_html"></context>
      </Host>
    </Engine>
  </Service>
/usr/local/tomcat/bin/startup.sh
ll /usr/local/tomcat/conf/Catalina/ 하위에 적용을 원하는 도메인명 폴더가 있는지 확인하고 없으면
mkdir 호스트네임명폴더 해서 만든다.  (대부분 자동으로 만들어질 것이다.
cd 호스트네임명폴더
vi ROOT.xml 해서 아래의 내용을 추가한다.!
<?xml version="1.0" encoding="utf-8"?>
<Context crossContext="true" docBase="/home/계정명/public_html" path="/" reloadable="true">
</Context>
netstat -nlp 해서 8080 포트가 java 로 사용되는지 확인
3. Tomcat-Connector 설치
tar zxvf tomcat-connectors-1.2.37-src.tar.gz
cd tomcat-connectors-1.2.37-src/native/
./configure --with-apxs=/usr/local/apache/bin/apxs
make && make install
cd apache-2.0/ (주의 : 자신의 apache 버전에 맞는 것으로 이동) mod_jk 가 설치된 것을 확인
* 정상적으로 설치가 되면 apache 모듈디렉토리에도 동일한 모듈이 만들어져있다.
 
(호스트먼트의 경우 first_setup/home/httpd/build 디렉토리를 /home/httpd/ 에 복사하면 에러 안남)
컴파일 에러가 발생하는 서버를 위해 완성된 모듈을 첨부한다. (첨부파일 참조)

vi /etc/httpd/conf/httpd.conf 해서 아래의 항목 추가
apache 1.3.x 의 경우 LoadModule jk_module     libexec/mod_jk.so
apache 2.x.x 의 경우 LoadModule jk_module          modules/mod_jk.so
 
그리고 아래의 Tomcat connector 설정 파일을 적절한 위치에 추가
 
# JSP TOMCAT
JkWorkersFile "/etc/httpd/conf/workers.properties"
JkLogFile "/var/log/httpd/mod_jk.log"
JkLogLevel emerg
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
JkMount /*.do ajp13
JkMount /*.pts ajp13
JkMount /*.app ajp13
JkMount /*.bbs ajp13
 
vi /etc/httpd/conf/workers.properties 해서 아래의 내용을 추가할 것!
 
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
#worker.ajp13.lbfactor=1
 
vi /etc/httpd/conf/virtualhosts.conf 해서 적용을 원하는 계정의 </Virtualhost> 상단에 아래내용 추가!
 
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
JkMount /*.do ajp13
 
해당 계정 public_html 하단에 test.jsp 파일을 만들어 아래내용 추가
 
<%@ page contentType="text/html; charset=euc-kr" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
 </HEAD>
 <BODY>
<% out.print("이 페이지가 보이신다면 JSP 환경이 정상적으로 구성된 것입니다.");%>
 </BODY>
</HTML>

[phpMyAdmin 설치]


 

1. 압축을 푼다.
# tar xfvz phpMyAdmin-3.2.3-all-languages.tar.gz
// phpmyadmin 버전에 따라 압축파일명이 다를수도 있음 (필자는 개인적으로 2.x대 버전을 추천한다.)


libraries 폴더로 들어간다.
# cd phpMyAdmin-3.2.3-all-languages/libraries


설정파일을 복사한다.
# cp config.default.php config.inc.php


파일을 수정
# vi config.inc.php
$cfg['PmaAbsoluteUri'] = 'http://domain.com/phpmyadmin';
$cfg['blowfish_secret'] = 'cookie'; // cookie 값 입력 (아무거나 입력해도 됨)  // 관습상 cookie로 입력을 한다.
$cfg['Servers'][$i]['host']          = 'localhost';
$cfg['Servers'][$i]['auth_type']     = 'cookie'; (작동 안되면 http 입력)
$cfg['Servers'][$i]['user']          = 'root';
$cfg['Servers'][$i]['password']      = 'mysql 비밀번호';


수정한 파일 이동
# mv config.inc.php ../


phpMyAdmin 접속할 수 있도록 웹폴더로 이동
# cd ../
# mv phpMyAdmin-3.2.3-all-languages /home/account/public_html/phpmyadmin // account는 서버의 계정임 (각각 다를수 있음)


* 웹에 접속해서 확인
http://domain.com/phpmyadmin


[트러블슈팅]

mcrypt 확장모듈을 불러올 수 없습니다.<br />PHP 환경설정을 검사하십시오.
(접속시 이런 메시지가 하단에 나타난다면)


여러가지 방법이 있겠지만 yum을 이용한 방법이 가장 간편하므로

# yum -y install libmcrypt libmcrypt-devel


php 재컴파일을 해야한다. 기존 컴파일 옵션을 그대로 사용하되

옵션에 --with-mcrypt 옵션을 넣고 컴파일 할것.

make && make install 과정 진행 중에

make: *** [libphp5.la] Error 1 (이와 같은 에러가 나면서 중단될 경우)

# yum install libtool-ltdl-devel -y

해주면 해결된다.

성공적으로 php 재컴파일이 끝나면

phpinfo(); 함수를 이용해서 정상적으로 mcrypt 옵션이 붙었는지 확인해보고 붙었다면

phpmyadmin 페이지에 접속해서 mcrypt 확장모듈을 불러올 수 없습니다.<br />PHP 환경설정을 검사하십시오.

메시지가 사라졌는지 확인해볼것. 



1. 소스파일 다운로드   
roundcubemail-0.8.6.tar.gz

CentOS 가 설치된 서버에 오픈소스 웹 메일인 RoundCube 를 설치해 봅시다.

사실 설치해서 사용중인데, 문제가 있어서 최신 버전으로 다시 설치하려니, 방법이 기억이 잘 안나서...

나중에 다시 써 먹을 요량으로 기록합니다.

http://roundcube.net 에 가서 포스팅 현재 최신 버전인 0.8.5 를 다운받습니다.

다운받은 파일을 서버에 업로드를 합니다.

아파치 디폴트 디렉토리인 /var/www/html/ 에다가 업로드합니다.

서버로 로그인 한 후, /var/www/html/ 로 가서 업로드한 파일을 압축해제 합니다.

tar zxvf roundcubemail-0.8.5.tar.gz

roundcubemail-0.8.5 디렉토리가 생깁니다.


들어가서 좀 살펴보고...난 후, 저 긴 디렉토리 이름을 짧은 걸로 바꿉니다.

webmail 이런걸로다...  (mv roundcubemail-0.8.5 webmail)


cd webmail

chmod 707 temp/ logs/

2. DB 계정 및 DB 생성

mysql 에 사용자와 DB를 만듭니다. 전 webmail 라고 만들었습니다.

mysql> create database webmail;
mysql> grant all privileges on webmail.* to webmail@localhost identified by 'DB패스워드';
mysql> flush privileges;


cd SQL/
mysql -u webmail -p webmail < mysql.initial.sql
Enter password:  패스워드입력

3. Apache 에 접속도메인 추가

<VirtualHost *>
ServerAdmin root@totohouse.co.kr
DocumentRoot /home/webmail/
ServerName webmail.YOURDOMAIN
ServerAlias www.webmail.YOURDOMAIN
</VirtualHost>


php.ini 파일에 date.timezone = ASIA/SEOUL  지시자 추가

Apache 재시작 후 해당 주소로 접속시 500 (Internal Server Error) 에러 발생시 http.conf 의 Directory 지시자 중

/home 디렉토리에 대한 접근권한 중 AllowOverride 항목 뒤에 Indexes 를 추가 후 Apache 재시작.

또는 .htaccess 파일 내용중 ExpiresActive On 와 ExpiresDefault "access plus 1 month" 를 주석처리한다.

4. dovecot.conf 에 아래와 같이 imap 프로토콜 사용 정의

 protocols = pop3 imap 

 /etc/init.d/dovecot restart

 netstat -nlp 의 결과 중 143포트가 아래처럼 나오면 된다.

tcp        0      0 0.0.0.0:143                 0.0.0.0:*                   LISTEN      20333/dovecot

5. roundcube 설치

http://webmail.YOURDOMAIN/installer​ 에 접속하여 설치시작


[환경설정 입력항목 정리] -> 전체 입력아닌 필수적인것만을 기록함.


product_name : Roundcube Webmail (다른이름으로 변경 가능)


[Database setup]
라운드큐브 설치 시 제작된 DB 정보를 올바르게 입력한다.


[IMAP Settings]
The IMAP host(s) chosen to perform the log-in -> 127.0.0.1
호스트필드를 127.0.0.1 로 하는이유는 서버에 도메인이 여러개일 경우
단일 도메인만 존재한다면 도메인값을 입력해도 무방함.
default_port -> 143


[Display settings & user prefs]
language -> ko_KR 


6. 마무리


모든 설치가 끝나면 webmail 디렉토리내의 installer 디렉토리를 삭제하고 메일 발송 및 수신 테스트를 진행해 본다.


*. 추가내용

라운드큐브메일 0.8 대는 php 5.2.x 에서 설치가 가능하지만

라운드큐브메일 0.9 이상의 버전에서는 php 5.3.x 이상 의 버전이 필요합니다.

 

'Works > 설치매뉴얼' 카테고리의 다른 글

Apache에 mod_cband 설치  (0) 2016.06.24
PHP 속도 향상을 위한 eAccelerator 설치  (0) 2016.03.18
JDK(java) & tomcat 설치 총정리  (0) 2016.01.11
php pdo-mysql 확장 모듈 설치  (0) 2015.10.28
Apache 에 GeoIP 모듈설치  (0) 2015.10.28