초기 가상머신 설정 시 용량 충분히 설정할 것 (MySQL)
모두 관리자 모드에서 실행
Apache2.4 수동설치
1. 필요한 패키지 설치
apt install make
apt install gcc
cp -arp libtool libtoolT
apt install libexpat1-dev
apt install net-tools
apt install curl
apt : 패키지 관리
cp : 디텍토리를 복사
2. apr, apr-util 설치
1)wget에 주소를 넣어 다운받고, tar로 압축해제
wget http://mirror.navercorp.com/apache//apr/apr-1.7.0.tar.gz
tar xvfz apr-1.7.0.tar.gz
wget http://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz
tar xvfz apr-util-1.6.1.tar.gz
wget 주소 : 웹으로 부터 원하는 정보를 가져옴
tar -xvf : 압축풀기
2)apr 설치
cd usr/local/apr-1.7.0
./configure --prefix=/usr/local/apr
make
make install
cd 디텍토리 위치 : 디텍토리 변경
./configure --prefix=위치 : 해당 위치에 파일을 설치
make : 소스를 컴파일
make install : 컴파일한 파일 설치 진행
3)apr-util 설치
cd usr/local/apr-util-1.6.1
./configure --with-apr=/usr/local/apr --prefix=/usr/local/apr-util
make
make install
3. PCRE 설치
cd usr/local
wget ftp://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz
tar xvfz pcre-8.44.tar.gz
cd usr/local/pcre-8.44
./configure --prefix=/usr/local/pcre
make
make install
wget으로 다운, tar로 압축 해제, configure로 파일 설치, make로 컴파일....
4. Apache 2.4.43 설치
cd /usr/local
wget http://apache.tt.co.kr//httpd/httpd-2.4.43.tar.gz
tar xvfz httpd-2.4.43.tar.gz
cd httpd-2.4.43
./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
make
make install
5. Apache 실행 단계
sudo /usr/local/apache2.4/bin/httpd -k start
ps -ef|grep httpd|grep -v grep
sudo netstat -anp|grep httpd
sudo curl http://127.0.0.1
It's Work!
http -k start : 아파치 시작
ps : 프로세스 명령어
netstat : 네트워크 정보를 확인하는 명령어
curl : 데이터를 원격 서버로 전송하거나 원격서버에서 데이터를 전송할 수 있는 명령어
MySQL 수동설치
1. 필요한 패키지 설치
1) update 진행
apt update
2) 패키지 설치
apt install cmake
apt install libssl-dev
apt install libboost-all-dev
apt install libncurses5-dev libncursesw5-dev
2. MySQL Community Server 8.0.21 다운로드
cd /usr/local
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.21.tar.gz
tar xvfz mysql-8.0.21.tar.gz
3. MySQL 설치
cd /usr/local/mysql-8.0.21
mkdir abcsql(디텍토리 이름 아무거나)
cd usr/local/mysql-8.0.21/abcsql
mkdir : 디텍토리를 만드는 것
소스 디렉토리 내에 build 를 위한 디렉토리를 추가 생성해야됨
cmake \
.. \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DSYSCONFDIR=/etc \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/mysql/boost
make
make test
make install
초기 용량 설정을 크게 안 하면 오류가 남
4. 데이터베이스 초기화
1) 그룹과 유저 생성
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
groupadd : 그룹 추가, useradd : 유저 추가
2) 디텍토리 생성
cd /usr/local/mysql
mkdir mysql-files
3) 소유권 부여 및 권한 설정
chown -R mysql:mysql /usr/local/mysql
chown mysql:mysql mysql-files
chmod 750 mysql-files
chown : 소유권 변경 명령어
4) 기본 데이터 베이스 생성
bin/mysqld --initialize --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
bin/mysql_ssl_rsa_setup
**임시 비밀번호 기억 후 암호 초기화때 사용
5. 암호 초기화
1) 서버 접속
bin/mysqld_safe --user=mysql &
bin/mysql -u root -p
이때 password는 방금 얻은 임시 비밀번호
2)암호 초기화
ALTER USER 'root'@'localhost' IDENTIFIED BY '여기에 사용할 비밀번호 입력';
3) 서버 종료
bin/mysqladmin -u root -p shutdown
PHP 7.4.8 수동설치
1. 패키치 설치
apt install libxml2-dev
apt install libjpeg-dev
apt install libpng-dev
2. PHP 파일 다운 및 설치
1) 파일 다운
cd /usr/local
wget https://www.php.net/distributions/php-7.4.8.tar.gz
tar xvfz php-7.4.8.tar.gz
2) 설치
cd php-7.4.8
./configure \
--with-apxs2=/usr/local/apache2.4/bin/apxs \
--enable-mysqlnd \
--with-mysql-sock=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-imap-ssl \
--with-iconv \
--enable-gd \
--with-jpeg \
--with-libxml \
--with-openssl
make
make test
make install
3. PHP와 Apache 연동
vi /usr/local/apache2.4/conf/httpd.conf
vi 모드에서
AddType application/x-gzip -gz -tgz 밑에
AddType application/x-httpd-php .php .html 를 추가한다.
vi 에디터 문법 주의, 참고 >> https://withcoding.com/112
4. php.ini 파일 세팅
cd /usr/local/php-7.4.1
cp php.ini-production /usr/local/lib/php.ini
5. phpinfo 로 테스트
cd /usr/local/apache2.4/htdocs
vi phpinfo.php
1) vi 에디터에서 다음과 같이 작성
<?php
phpinfo();
?>
php 앞에 띄어쓰기 없도록 주의
2) 아파치 실행 후 curl
sudo /usr/local/apache2.4/bin/httpd -k start
sudo netstat -anp|grep httpd
sudo curl http://127.0.0.1/
실수
1. 관리자 권한 -sudo su
2. apache 설치단계에서 lock file 오류 - /usr/local의 apr-util, apr-util-1.6.1폴더 삭제
3. 필요한 패키지를 미리 설치하지 않거나 update를 하지 않아 오류 - 패키지설치, update진행
4. curl: (7) Failed to connect to 127.0.0.1 port 80: Connection refused
-아파치가 제대로 실행 안 됨
-공유기 포트 개방, 방화벽 해제
5. CMake Error at CMakeLists.txt:352 - 소스 디텍토리 내에 build를 위한 디텍토리를 추가 생성
6. phpinfo 파일 작성 - 오타로 인한 오류
7. MySQL 설치 과정 중 컴파일 과정에서 용량부족으로 오류 - 초기 가상머신 설정때 용량 넉넉히
참고 : https://velog.io/@yuus95/VMware-ubuntu-APM%EC%86%8C%EC%8A%A4%EC%84%A4%EC%B9%98
'기타 > 기타' 카테고리의 다른 글
Node.js 기본 개념 및 동작 원리 (0) | 2021.09.26 |
---|---|
서브 도메인 설정 및 리다이렉션 (0) | 2021.07.04 |
도메인 설정 및 HTTPS 적용 (0) | 2021.07.04 |
MySQL 외부 접속 허용 및 phpMyAdmin 설치 (0) | 2021.07.04 |
Window에 Local 서버 구축 및 외부 접속을 위한 Port forwarding (0) | 2021.06.29 |