설치 환경
os - AL2023
ssh 접속
apache, php, mariaDB
web server 설치
- 프로그램 패키지 목록 업데이트
sudo dnf update - apache를 설치합니다
sudo dnf install httpd - 아파치 환경 설정
- httpd.conf 파일 수정
- index.html 옆에 index.php 추가
- sudo systemctl start httpd // 웹서버를 시작
- sudo systemctl enable httpd // 부팅시 자동 실행
- sudo systemctl is-enabled httpd // 아파치 실행여부
- 파일 권한을 설정합니다
sudo usermod -a -G apache ec2-user // 아파치 그룹에 모든 권한을 ec2-user가 상속 받으라는 뜻 - 홈페이지 디렉토리 권한 변경
sudo chown -R ec2-user:apache /var/www - 홈페이지 쓰기 권한 부여
sudo chmod 2775 /var/www && find /var/www -type d -exec sudo chmod 2775 {} \; // 디렉토리 권한
find /var/www -type f -exec sudo chmod 0664 {} \; // 파일 권한
- httpd.conf 파일 수정
PHP 설치
- 프로그램 언어 php와 모듈을 설치합니다
sudo install php php-mysqlnd wget php-fpm php-mysqli php-json php php-devel php-cli - 추가 모듈 설치
- dnf list | grep php // 최신 모듈 찾기
sudo dnf install php8.x-gd - sudo dnf install php-intl
- sudo dnf install -y php-curl
- dnf list | grep php // 최신 모듈 찾기
- 환경 설정
- sudo vim /etc/httpd/conf/httpd.conf
- AllowOverride None
=> AllowOverride All
- AllowOverride None
- apache & PHP 연동
- sudo vim /etc/httpd/conf.d/php.conf // 아파치 환경파일
- 페이지 하단에 아래 코드 입력
- sudo vim /etc/httpd/conf.d/php.conf // 아파치 환경파일
- sudo vim /etc/httpd/conf/httpd.conf
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
- sudo vim /etc/php-fpm.d/www.conf // 최신 php 환경설정 파일
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
listen.mode = 0660
- sudo systemctl start php-fpm // php 모듈 실행
데이터베이스 설치
- sudo dnf install mariadb105-server
- sudo systemctl start mariadb
- DB root 암호 설정
sudo mysql_secure_installation
익명의 사용자 제거할인지 물으면 yes
root 암호 만들건지 물어 보면 yes
암호 입력, 암호 재입력 - 부팅시 자동시작
sudo systemctl enable mariadb
또는
sudo chkconfig mariadb on
마지막 최종 테스트
echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
http://본인 ip주소/phpinfo.php
유용한 TIP
- 패키지들의 현재 버전 확인
sudo dnf info 패키지 이름
ex) sudo dnf info mariadb105 - phpMyAdmin을 사용하려면
sudo dnf install php-mbstring php-xml -y - phpMyAdmin 최신버전 다운로드 & 설치
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
mkdir phpMyAdmin && tar -xvzf phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1 - 저장소 추가
sudo amazon-linux-extras install php8.x - 방화벽 확인 & 수정
- AWS EC2 인스턴스 -> 보안 그룹
- 인바운드
- SSH (22번 포트) 0000.0
- HTTP (80번 포트) 0000.0
- HTTPS (443번 포트) 0000.0
- MySQL/MariaDB (3306번 포트) 0000.0
- 아웃바운드
- default 값 유지
'IT 관련 > 리눅스' 카테고리의 다른 글
| 파일 압축하기, 풀기 (0) | 2025.04.11 |
|---|---|
| DNS를 사용 내부 네트워크 꾸미기 (0) | 2025.04.10 |
| SSH server (0) | 2025.04.10 |
| 리눅스 기본 명령어 모음 (0) | 2025.03.27 |
| vi , vim 단축키 모음 (0) | 2025.03.27 |