워드프레스 설치에 필요한 서버 프로그램은 총 3가지. 아래 패키지를 묶어 APM 이라고 합니다.
GRANT USAGE ON *.* TO
jiyeun@
localhostGRANT ALL PRIVILEGES ON
myplanetdb.* TO
jiyeun@
localhost`` 위 쿼리 결과로 나온 두 건 중 첫번째에 GRANT USAGE ON . TO가 있습니다. 이건 . 는 아무 권한이 없다는 의미입니다. 현재 jiyeun 계정은 myplanetdb 에만 모든 권한을 가지고 있고 mysql의 admin이나 system을 접근 할 수 있는 권한은 없습니다. 계정 뒤에 붙은 @localhost는 해당 계정이 localhost 즉 mysql이 설치된 pc에서만 접속 할 수 있다는 의미입니다. 만약 다른 서버(remote)에서 접속하고 싶다면 접속하려는 서버의 IP로 계정을 새로 만들어줘야 합니다. 예를 들어 192.168.0.10에서 접속하고 싶다면 아래와 같이 쿼리를 실행하면 됩니다.`CREATE USER 'root'@'192.168.0.10' IDENTIFIED BY 'ngle1234';
GRANT ALL PRIVILEGES ON . TO 'root'@'192.168.0.10' WITH GRANT OPTION;
FLUSH PRIVILEGES;`
만약 특정 PC(192.168.0.10)이 아닌 어디서든 접속하려면 IP대신 %로 해주면 됩니다.
`CREATE USER 'root'@'%' IDENTIFIED BY 'ngle1234';
GRANT ALL PRIVILEGES ON . TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;`
$ sudo apt update && sudo apt install apache2
⇒ 첫번째 명령은 패키지 목록을 업데이트하고 Apache에 대한 최신 버전과 종속성을 얻을 수 있도록 합니다. 두번째 명령은 Apache를 다운로드하고 설치합니다.
$ sudo ufw allow OpenSSH
⇒ 서버를 원격으로 구성하는 경우 방화벽을 활성화 할 때 잠기는 것을 원하지 않기 때문에 SSH에 대한 방화벽 규칙을 추가합니다. "오류:openSSH와 일치하는 프로필을 찾을 수 없습니다"라는 오류가 발생 하는 경우 서버를 원격으로 구성하지 않고 무시 할 수 있습니다.
$ sudo ufw allow in "Apache Full"
$ sudo ufw enable
⇒ Apache에 대한 방화벽 규칙을 추가 할 수 있습니다. 방화벽이 활성화되지 않은 경우 활성화합니다.
$ sudo ufw status
⇒ 현재 방화벽 상태를 확인 할 수 있습니다.
$ sudo service apache2 status
⇒ Apache가 올바르게 설치되었는지 확인하기 위해 현재 Apache 서비스 상태를 확인 할 수 있습니다.
실행중이면 Active 가 녹색으로 표시되어야 합니다.
$ hostname -I
⇒ 본인의 아이피를 확인 할 수 있습니다.
확인된 아이피를 주소 표시줄에 입력하면 Apache default Page 가 나옵니다.
$ sudo nano /var/www/html/index.html
⇒ 기본 시작 페이지를 편집 할 수 있습니다. 종료는 CTRL + X 입니다.
$ sudo mkdir -p /var/www/mydomain.com/public_html
⇒ Ubuntu 20.04 서버에서 여러 도메인을 호스팅하려면 가상 호스트를 설정해야합니다. /var/www/ 도메인에 대한 새 디렉토리를 만듭니다. mydomain.com 을 자신의 것으로 바꿉니다.$ sudo nano /var/www/mydomain.com/public_html/index.html
⇒ 테스트를 위해 index.html 파일을 만듭니다. ` <head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome to mydomain.com!</h2>
</body>
`
⇒ 그리고 다음을 입력하고 저장 및 종료(ctrl+x ... y 를 차례로 누르고 enter 을 누릅니다.)
`$ sudo nano /etc.apache2/sites-available/mydomain.com.conf`
⇒ [mydomain.com](http://mydomain.com/) 을 자신의 것으로 대체하는 가상 호스트 구성 파일을 만듭니다.
```
ServerAdmin webmaster@mydomain.com
ServerName mydomain.com
ServerAlias www.mydomain.com
DocumentRoot /var/www/mydomain.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
```
⇒ 다음을 입력하여 [mydomain.com](http://mydomain.com/) 을 자신의 것으로 바꿉니다.
저장 및 종료(ctrl+x ... y 를 차례로 누르고 enter 을 누릅니다.)
```
$ apachectl configtest
```
⇒ 오류를 테스트 합니다.
```
$ sudo a2ensite mydomain.com.conf
```
⇒ [mydomain.com](http://mydomain.com/) 을 자신의 것으로 대체하는 가상 호스트를 활성화합니다.
```
$ sudo a2dissite -default
```
⇒ 기본 Apache 웹 사이트를 비활성화합니다. 그렇지 않으면 가상 호스트를 재정의합니다.
```
$ sudo systemctl reload apache2
```
⇒ Apache 를 다시 시작합니다.
이제 브라우저에서 사이트를 로드 할 수 있습니다.
이제 4개의 단계를 반복하여 더 많은 도메인을 추가 할 수 있습니다.