AWS EC2 RDS LAMP 개발 환경 구축

LAMP 환경 만들기



· 전제 조건



시작된 EC2 인스턴스에 SSH 연결되어 있는지

· 루트 사용자 생성 및 비밀번호 설정


#ルートへログイン
[ec2-user@ip-***-***-***-*** ~]$ sudo -i
# パスワードの設定
[root@ip-***-***-***-*** ~]$ passwd
 Changing password for user root.
 New password: (パスワード入力)
 Retype new password: (もう一度入力) 
 passwd: all authentication tokens updated successfully.
[root@ip-***-***-***-*** ~]$ 

successfully가 출력되면 패스워드가 올바르게 변경되고 있습니다.

· apache 설치



 설치


[root@ip-***-***-***-*** ~]$ yum install -y httpd24

자동 시작 설정


[root@ip-***-***-***-*** ~]$ chkconfig httpd on

일본어화와 타임존 [도쿄] 설정


# 言語設定を日本語に変更
[root@ip-***-***-***-*** ~]$ vim /etc/sysconfig/i18n
 LANG=ja_JP.UTF-8
# タイムゾーンを東京に変更
[root@ip-***-***-***-*** ~]$ echo -e 'ZONE="Asia/Tokyo"\nUTC=false' | sudo tee /etc/sysconfig/clock
[root@ip-***-***-***-*** ~]$ cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
# 結果確認
[root@ip-***-***-***-*** ~]$ date

· PHP 설치



 설치


[root@ip-***-***-***-*** ~]$ yum install -y php73
# バージョン確認
[root@ip-***-***-***-*** ~]$ php -v
   PHP 7.3.4 (cli) (built: Apr 15 2019 23:45:12) ( NTS )
   Copyright (c) 1997-2018 The PHP Group
   Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
# PDOのインストール
[root@ip-***-***-***-*** ~]$  yum install -y php73-pdo
[root@ip-***-***-***-*** ~]$  yum install -y php73-mysqlnd

시간대 [도쿄] 설정


[root@ip-***-***-***-*** ~]$ vim /etc/php.ini
# php.ini は内容量が非常に多いため、
# /date.timezone と入力して検索します
   [Date]
   ; Defines the default timezone used by the date functions
   ; http://php.net/date.timezone
   ;date.timezone 
# コメント化されている[;date.timezone]をdate.timezone = 'Asia/Tokyo'に変更します
   [Date]
   ; Defines the default timezone used by the date functions
   ; http://php.net/date.timezone
   date.timezone = 'Asia/Tokyo'

.htaccess 활성화


[root@ip-***-***-***-*** ~]$ vim -r /etc/httpd/conf/httpd.conf
# /www\/html と入力して検索します
   DocumentRoot "/var/www/html"
   <Directory "/var/www/html">
       AllowOverride None
# AllowOverride None を AllowOverride Allに変更します
   DocumentRoot "/var/www/html"
   <Directory "/var/www/html">
       AllowOverride All

· MySQL 설치



 설치


[root@ip-***-***-***-*** ~]$ yum install mysql
# DBサーバーに接続
[root@ip-***-***-***-*** ~]$ mysql -h <RDSインスタンスのエンドポイント> -u username -p
...下記省略...

· phpMyAdmin 설치



 설치


[root@ip-***-***-***-*** ~]$ yum --enablerepo=epel install -y phpMyAdmin

  접속 설정 [DB 접속]


[root@ip-***-***-***-*** ~]$ vi etc/phpMyAdmin/config.inc.php
# 設定の確認
$cfg['Servers'][$i]['host'] = 'localhost';
# ホストの指定
$cfg['Servers'][$i]['host'] = 'DBサーバーのIP/エンドポイント';

  접속 설정 [접속 허가]


# 接続可能なipアドレスを指定します
# 今回は誰でもアクセスできるように指定しています
[root@ip-***-***-***-*** ~]$ vim /etc/httpd/conf.d/phpMyAdmin.conf
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>
# Require ip 127.0.0.1を#でコメント化し
# Require all grantedを追記します
     <RequireAny>
       #Require ip 127.0.0.1
       Require all granted
       Require ip ::1
     </RequireAny>

폴더에 대한 참조 권한 추가


# 読み取りと実行を許可
[root@ip-***-***-***-*** ~]$ chmod o+xr /var/www/html

· 설정 확인



php의 기본 디렉토리 확인


[root@ip-***-***-***-*** ~]$ ls -ld --context /var/www/html
   drwxrw-r-x ec2-user root ?                                /var/www/html


SELinux의 상태 확인


[root@ip-***-***-***-*** ~]$ getenforce
Disabled

Enforcing이 표시되면 SELinux가 활성화 된 상태입니다.
그 경우는 이하의 설정을 실시합니다.

[root@ip-***-***-***-*** ~]$ vi /etc/selinux/config
# enforcing から disabledに変更します
SELINUX=disabled

AWS EC2 콘솔에서 서버를 재부팅하고 다시 확인하십시오.
[root@ip-***-***-***-*** ~]$ getenforce
Disabled

'Disabled'가 표시되면 SELinux가 비활성화로 변경되었습니다.

· 설정 적용을 위해 apache 재부팅



재부팅 명령 실행


[root@ip-***-***-***-*** ~]$ service httpd start
   Starting httpd: AH00557: httpd: apr_sockaddr_info_get() failed for ip-XXX-XXX-XXX-XXX
   AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message
                                                           [  OK  ]

http://{공용 IP}/phpMyAdmin/
를 방문하여 테스트 페이지가 표시되는지 확인하십시오.

좋은 웹페이지 즐겨찾기