본문 바로가기

System engineer

Apache 웹 서버 설치와 기본설정. php 사용


Apache 서버 설치 및 기본 설정


명령어 

1 #yum install httpd -v

2 #rpm -qa | grep httpd 

3 #ls /etc/httpd/

4 #ls -l /var/www

5 #ls /var/log/httpd/

6 #vim /etc/httpd/conf/httpd.conf

7 ServerRoot "/etc/httpd"

8 Listen 192.168.80.5:80

9 ServerAdmin root@test.com

10 ServerName www.test.com:80

11 DocumentRoot "/var/www/html"

12 DirectoryIndex index.html index.php

13 ErrorLog "logs/error_log"

14 CustomLog "logs/access_log" combined


위 명령어 설명
1 아파치 패키지 설치.

2 rpm 을 이용하여 httpd와 의존 관계에 있는 다른 패키지도 동시에 설치 되었는지 확인한다.

3 apache 서버의 설정 파일이 위치한 디렉토리 확인

4 apache 서버가 브라우저 상에서 인식할 데이터가 저장될 디렉토리이다.

5 apache 서버의 로그 파일이 저장 될 디렉토리

6 설치 이후 기본 설정을 위해 apache 서버가 사용하는 설정 파일을 vim 로 열어 본다.

7 apache 서버가 사용할 설정 파일들이 저장 된 디렉토리를 지정해 줍니다.

8 apache 서버가 사용하는 여러 인터페이스가 있을 경우 그 중에서 어떤 IP 주소로 클라이언트의 접속을 받을 지 결정합니다. IP 주소를 지정하지 않고 포트 번호만 입력하면, 모든 주소를 사용한다는 의미입니다.

9 문제가 발생 했을 경우 apache 서버가 보낼 이메일 주소를 입력합니다. 

10 apache 서버가 사용할 이름과 포트를 설정. 이 이름은 DNS에서 설정된 이름을 사용하고 그렇지 않는 경우 이름 대신 IP 주소를 사용할 수 있습니다. 

11 apache 서버가 인식할 데이터들이 저장될 디렉토리 입니다.

12 클라이언트가 웹 서버 접속 식 초기 화면으로 보여줄 파일 명. 기본은 index.html이며 이 파일이 없을 경우 index.php 파일을 찾게 됩니다.

13 apache 서버에서 에러가 발생한 경우 그것을 기록할 로그 파일을 지정합니다. 여기서 logs는 /etc/httpd/logs이고 이 데릭토리는 /var/log/httpd/ 에 링크로 연결 되어 있습니다.

14 apache 서버에 접속하는 일반적인 접속 정보를 기록할 로그 파일을 지정합니다. 여기서 logs도 위와 동일합니다. 


패키지 설치와 기본 설정이 완료되면 이제 apache를 실행 할 수 있습니다. 


1 #systemctl start httpd

2 #systemctl enable httpd

3 #systemctl status httpd

4 #netstat -ntl | grep httpd

5 #lsof -i tcp:80

6 #httpd -v


1 apache 실행

2 부팅 시 apache 자동 실행

3 apache 상태 확인

4 httpd 데몬이 사용하는 포트와 프로토콜, PID를 확인 할 수 있습니다.

5 lsof 를 통해 포트 80을 확인하면 명령어 httpd가 http 서비스를 제공하고 있음을 알 수 있습니다.

6 v 옵션으로 apache 버전 정보를 확인할 수 있습니다.


apache 서버 시작 후 php 사용 방법입니다.


명령어

1 #yum install php php-pear -y

2 #rpm -qa | grep php

3 #vim /var/www/html/index.php

4 #vim /etc/php.ini

date.timezone=Asia/Seoul

5 #ls -l /etc/httpd/conf.d/php.conf

6 #ls -l /etc/httpd/conf.modules.d/10-php.conf

7 #ls -l /etc/httpd/modules/libphp5.so

8 #systemctl restart httpd


위 명령어 설명

1 yum으로 php 패키지를 설치한다. php-pear는 재사용이 가능한 php 구성 요소들을 지원하는 패키지다.

2 rpm으로 설치 된 패키지를 확인한다.

3 php 테스트를 위해 index.php 파일을 열어 본다.

4 설정 파일에서 자신이 사용하는 시간대를 설정한다.

5. php 관련 된 설정을 정의하는 파일인데, 이 파일은 php 패키지를 설치하면 사용 할 수 있다.

6 php를 apache 서버에서 사용하기 위해 필요한 모듈을 정의한 파일이며, 이 파일도 php 패키지를 설치해야 사용할 수 있습니다. 7번에 모듈이 정의되어 있습니다.

7 php가 사용하는 모듈 이름이고, 이 모듈은 php 패키지를 설치하면 사용 가능합니다.

8 위 설정들을 적용하기 위해 apache를 재시작합니다. 


 위 설정을 마치고 웹 브라우저에 IP 주소를 입력하면 apache 테스트 화면이 보여집니다.


php 파일을 생성한 경우 http://ip주소/index.php 를 입력하면 php정보를 확인 할 수 있습니다.


방화벽 설정. 


Iptables 설정하기


#iptables -A INPUT -m state --state NEW,ESTABLISHED -p tcp --dport 80 -j ACCEPT
#iptables -A INPUT -m state --state NEW,ESTABLISHED -p tcp --dport 443 -j ACCEPT



Firewalld를 사용중이라면,

#firewall-cmd --permanent --add-service=http

#firewall-cmd --permanent --add-service=https

#firewall-cmd --reload

#firewall-cmd --list-services