반응형
1. apr 설치
- apr이란?
- apache portable runtime의 줄임말
- Http 서버의 핵심이며 휴대용 라이브러리이다. apr은 고급 IO기능에 대한 접근, OS수준의 기능, 기본 프로세스 처리 등의 용도로 사용된다.
- apache가 설치된 OS에 관계없이 일정한 동작을 하기 위해 필요한 라이브러리이다
사용된 명령어
- ~$ wget http://mirror.navercorp.com/apache//apr/apr-1.7.0.tar.g
- ~$ wget http://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz
- ~$ tar xvfz apr-1.7.0.tar.gz
- ~$ tar xvfz apr-util-1.6.1.tar.gz
- ~$ wget https://www.apache.org/dist/apr/apr-1.7.0.tar.gz.sha256
- ~$ sha256sum --check apr-1.7.0.tar.gz.sha256
- ~/apr-1.7.0$ sudo apt-get install build-essential
- ~/apr-1.7.0$ cp -arp libtool libtoolT
- ~/apr-1.7.0$./configure --prefix=/usr/local/apr
- ~/apr-1.7.0$ make
- ~/apr-1.7.0$ sudo make install
- mkdir: make directory
- wget: web +get, 즉 web 서버로부터 콘텐츠를 가져온다.
- tar: 여러 개의 파일을 하나의 파일로 묶거나 풀 때 사용하는 명령어이다. tar 자체는 압축을 하는 것이 아닌 여러 파일을 묶는 용도이다.
- configure: 특정 플랫폼에서 apache 웹서버를 컴파일하고 설치하기 위해 소스 트리를 구성한다. 즉 install을 하기 위한 환경을 설정하는 프로그램이다.
- —prefix=/usr : 컴파일된 프로그램을 설치하는 위치를 지정한다.
- make: configure에 의해서 만들어진 makefile로 프로그램을 컴파일하는 과정이다.
- make install: 컴파일된 프로그램, 환경 file, data file을 지정된 위치에 복사하는 과정이다. 소스로 된 프로그램을 install 하는 방법 중 일반화된 방법이 configure-> make -> make install 순으로 install 하는 것이다.
2. apr-util 설치
사용된 명령어
- ~/apr-util-1.6.1$ ./configure --with-apr=/usr/local/apr --prefix=/usr/local/apr-util
- ~/apr-util-1.6.1$ sudo apt-get install libexpat1-dev
- ~/apr-1.7.0$ cp -arp libtool libtoolT
- ~/apr-util-1.6.1$ make
- ~/apr-util-1.6.1$ sudo make install
- util : 운영체계에서 제공되는 것 외에 추가의 기능을 제공하는 작은 프로그램을 의미한다.
3. PCRE 설치
- PCRE란?
- Perl Compatible Regular Expressions의 줄임말
- 펄 호환 정규 표현식으로서 , 정규식 패턴 일치를 구현하는 함수의 집합
사용된 명령어
- ~$ wget ftp://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
- ~$ tar xvfz pcre-8.43.tar.gz
- ~/pcre-8.43$ ./configure --prefix=/usr/local/pcre
- ~/pcre-8.43$ make
- ~/pcre-8.43$ sudo make install
4. Apache 설치
사용된 명령어
- ~$ wget http://apache.tt.co.kr//httpd/httpd-2.4.46.tar.gz
- ~$ tar xvfz httpd-2.4.46.tar.gz
- ~/httpd-2.4.46$ ./configure --prefix=/usr/local/apache2.4 \--enable-module=so --enable-rewrite --enable-so \ --with-apr=/usr/local/apr \ --with-apr-util=/usr/local/apr-util \ --with-pcre=/usr/local/pcre \ --enable-mods-shared=all
- ~$ wget http://ftp.gnu.org/gnu/m4/m4-1.4.18.tar.gz
- ~$ tar xvfz m4-1.4.18.tar.gz
다음 6개의 각각의 파일에서 _IO_ftrylockfile 옵션을 _IO_EOF_SEEN 옵션으로 변경
- ~/m4-1.4.18/lib# vim fflush.c
- ~/m4-1.4.18/lib# vim fpurge.c
- ~/m4-1.4.18/lib# vim freadahead.c
- ~/m4-1.4.18/lib# vim freading.c
- ~/m4-1.4.18/lib# vim fseeko.c
- ~/m4-1.4.18/lib$ vim stdio-impl.h
vim을 사용하여 stdio-impl.h 파일에
#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
#define _IO_IN_BACKUP 0x100
#endif
를 추가한다.
- ~/m4-1.4.18$ ./configure
- ~/m4-1.4.18$ make & make install
- 오류 목록
- 5번 명령어를 실행하는 과정에서 옵션을 변경할 때 오류가 발생하였다.
- 따라서 전부 다 삭제 후 재설치하였으며 옵션을 변경할 때
- :%s/_IO_ftrylockfile/_IO_EOF_SEEN 명령을 사용하여 실수를 없앨 수 있었다.
- 6번 명령어에서 _IO_IN_BACKUP의 정의를 찾는데에 오랜 시간이 걸렸고 이는 구글링을 통하여 해결했다.
- —with-apr: httpd 소스 배포본에 포함된 Apache Portable Runtime (APR)은 자동으로 웹서버와 같이 컴파일된다
5. 설정하기
sudo vim /usr/local/apache2.4/conf/httpd.conf
- #ServerName www.example.com:80 부분을 ServerName 127.0.0.1:80으로 변경한다.
6. Apache 실행
sudo /usr/local/apache2.4/bin/httpd -k start
- 종료할 땐 start 대신 stop을 쓴다.
7. 포트 80번 방화벽 개방하기
- firewall-cmd --permanent --zone=public --add-port=80/tcp
- firewall-cmd --reload
- firewall-cmd --list-ports
8. 서비스 작동 여부 확인 및 작동시키기
systemctl list-unit-files | grep httpd
9. 실행
10. 설치를 진행하면서 느낀 점:
- 생각보다 오래 걸렸다.
- 설치를 진행할 때는 되게 막막했는데 끝나고 보니 어렵지 않았다.
- 구글링을 잘하는 것이 중요하다는 것을 깨달았다.
- 명령어들을 직접 사용해보고 많이 익혔다.
- 영어 독해력이 많이 부족하다.
반응형
'서버 & 네트워크' 카테고리의 다른 글
쿠키와 세션 (0) | 2021.09.10 |
---|---|
WAS와 웹 서버의 차이 (0) | 2021.09.08 |
리눅스 환경에서 AMP소스설치(3) PHP 7.4.21 (0) | 2021.09.07 |
리눅스 환경에서 AMP소스설치(2) MySQL 8.0.25 (0) | 2021.09.06 |
서버란? (0) | 2021.09.06 |
댓글