새소식

인기 검색어

TL

21/02/12 TL. APM 이용한 웹서버 구축. 웹하드 구현. ownCloud 구축.

  • -

오늘 할 일

산타토익 710점

이것이 리눅스다 12장까지


강의

www.inflearn.com/course/%EC%9D%B4%EA%B2%83%EC%9D%B4-%EB%A6%AC%EB%88%85%EC%8A%A4%EB%8B%A4/dashboard

 

'이것이 리눅스다' 저자의 Red Hat CentOS7 리눅스 서버&네트워크 강좌 - 인프런

한빛미디어에서 발간한 '이것이 리눅스다' 의 저자가 직접 강의하는 강좌 입니다. 초급 서버 개발 Linux 온라인 강의 이것이 리눅스다

www.inflearn.com

교재

www.hanbit.co.kr/store/books/look.php?p_code=B2195555382

 

이것이 리눅스다 - 리눅스 마스터를 위한 마지막 기회

리눅스 설치도 어려운 독자에게 이 책을 권한다. 이것이 리눅스다는 초보자도 막힘 없도록 실습환경을 제공한다. 특히 FTP 서버는 물론, NFS, Samba, DHCP, 프록시 등 네트워크 실습 과정도 초보의 눈

www.hanbit.co.kr

일단 httpd, php, mariadb-server가 없으면 설치한다.

내 경우엔 mariadb-server, mariadb, php, php-mysqlnd를 설치했다. 설치 후에 mariadb와 httpd를 재시작, 상시가동, 방화벽 허용을 해준다. 방화벽 허용할 땐 http와 https만 해준다.

 

/var/www/html/이 웹서버의 홈 디렉터리이다. 이제 여기에 phpinfo.php를 만들어준다. 글 내용은 <?php phpinfo(); ?>만 써놓으면 된다. 이제 웹을 열고 localhost/phpinfo.php로 접속하면 아래와 같은 화면이 나온다.

 

이제 AjaxXplorer(pydio)를 설치하고 운영해본다.

php 관련된 모든 걸 다운로드 받자.

skip-broken은 오류나는 것들은 무시하고 그냥 진행하겠다는 뜻.

php-mcrypt를 설치하고 싶은데, 이건 센토스에선 지원 안 해주고, 레드햇에는 지원해주기 때문에 epel-release를 설치해서 레드햇 엔터프라이즈에 있는 패키지를 설치할 수 있도록 해주고, 그 다음에 php-mcrypt를 설치한다.

 

epel 설치할 때 이상이 생긴다면, 

cafe.naver.com/thisislinux/6336

해당 글을 참고하면 된다. 위 방법대로 할 때, 구글링 해서 centos로 접근하면 인증서 오류 때문에 차단될 수 있는데, 그럴 때는

www.nosuchhost.net/~cheese/fedora/packages/epel-7/x86_64/cheese-release.html

이 사이트로 가서 직접 다운로드 받으면 된다.

내 경우에는, epel.repos에서 mirrorlist가 따로 없어서, metalink들을 모두 주석처리 해줬더니 해결할 수 있었다!

 

/etc/httpd/conf/httpd.conf에서 152번째 줄에 AllowOveride All로 바꿔주자.

 

이제 pydio에 접근이 가능하다!

웹하드는 2mb까지밖에 못 올리는데, 이게 php 설정에서 2mb로 제한했기 떄문이다. 따라서 php 설정을 바꿔주면 더 올릴 수 있다.

 

/etc/php.ini를 수정한다.

 

385쯤의 max_input_size를 300, 670쯤의 post_max_size를 100M, 800쯤의 upload_max_filesize를 100M로 설정해 준다.

이후 캐시 삭제 후 서비스를 재시작한다.

/var/www/html/만든 파일(나는 webhard)/data/cache/ 에서 plugin*를 삭제하면 캐시를 없앨 수 있다.


이제 ownCloud를 설치해서 운영해보자.

설치를 완료했다면 /var/www/html/에 owncloud가 있는 것을 확인할 수 있을 것이다. 그러면 httpd를 재시작하고 웹에서 192.168.111.100/owncloud로 접근할 수 있다.

 

window client에 설치할 때,

여기에 웹 주소에 넣던 주소를 넣어주면 된다.

설치를 완료하면 이제 동기화가 완료되고 동기화된 폴더에 파일이 추가되면 해당 파일이 클라우드와 다른 컴퓨터의 동기화된 폴더에 자동으로 올라간다. 리눅스에서 설치할 때는 owncloud뿐 아니라, qtwebkt도 설치해야 한다.


웹서버 설정 파일인 httpd.conf 파일을 xe윈도우 상에서 직접 수정할 수도 있다.

우선 system-config-httpd를 설치하자.(centos에선 지원 안 해준다.)

그런데, 이렇게 xe윈도우 상에서 편집하는 것은 추천하진 않는다.

 

이제 소스를 컴파일해서 apm을 설치해보자.

 

우선 gcc와 gcc-c++를 설치해야 한다. httpd도 삭제하자.

 

중간에 apr-util을 잘못 옮겨서 apr-util로 다시 넣어줬다.

밑을 따라치자.

원랜 여기서 마지막 줄에; make; make install;도 추가로 넣어서 한 번에 해주어야 한다.

/etc/ld.so.conf를 vi로 수정해서 마지막에

/web/httpd2/lib

/web/httpd2/modules

를 추가해준다. 그리고 ldconfig를 하면 변경사항을 적용할 수 있다.

cp /web/httpd2/bin/apachectl /etc/init.d/httpd2 를 입력해서 시작 스크립트를 복사한다.

/etc/init.d/httpd2를 열고 마지막에 아래 그림처럼 추가해 주자.

이제 chkconfig httpd2 on을 입력하면 부팅할 때마다 실행한다. 이제 httpd2를 재시작해주자.

localhost로 접속했을 때 이렇게 나오면 잘 되는 것이다.

이제 mariadb를 설치해보자.

 

마지막 줄 의미는 /web/mariadb를 홈으로 두고, 실질적으로 사용은 안 하겠다는 의미이다.
mariadb를 초기화 하겠다는 뜻.
/etc/my.conf 파일에서 mysqld 부분을 찾아, basedir와 datadir 부분을 추가해 준다.
이제 mariadb도 항상 적용된다.

이제 php 차례! php의 경우에는 libxml2-devel openssl-devel libjpeg-devel libpng-devel을 설치해주어야 한다.

 

tar 해준 다음 php 컴파일 하는 옵션. 길다...

가장 주용한 파일은 /web/httpd2/modules/libphp5.so이다. 이걸 위해서 이러한 과정을 거친 것이다.

 

/web/httpd2/conf/httpd.conf 파일을 수정한다.

147 줄을 확인하면 modules/libphp5.so가 추가돼있다.

376 줄에 AddType application/x-httpd-php .php .php3 .php4 .php5 .html .html .inc를 추가해서 타입을 다 추가해주자.

 

cp php.ini-production /etc/php.ini해서 이제 httpd2를 stop, start해보자. 그 다음 status를 확인해 보면 잘 되고 있는걸 확인할 수 있다. 이후 방화벽을 추가해 준다.

 

/web/httpd2/htdocs/phpinfo.php에 <?php info(); ?>를 추가해 주고 웹으로 들어가서 확인하면 잘 나오는 것을 확인할 수 있다.

 

굳이 컴파일 해야만 성능을 좋은 것은 아님. 사실 yum으로 하는 것만으로도 충분하다.


 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.