이 글은 이전 서버 설치 중 도움이 되었던 부분을 잊지 않기 위해 남겨둔 기록 중 일부이다.
많은 부분이 잘못되어있고, 오류도 있다.
하지만, 시작부분을 알려주는 키포인트들을 기억하기 위해 원본 그대로 남겨둔다.
서버를 하나 구해서 워드프레스를 설치하던 중, 이전에 했던 것을 잊어버려서 한시간을 끙끙 고생했다.
이전에는 잘 된 것 같고, 아무 문제 없이 진행했던 것 같은데 왜 안 되는걸까 하다가.. 그냥 짬짬이 기록을 남기기로 했다.
#HTTP/HTTPS 접속
일단 80 으로는 접속이 잘 되면, SSL 인증서를 발급받아야 한다.
알아서 lets encrypt를 잘 이용해서 받는다.
인증서가 잘 받아졌으면
sudo a2enmod ssl
sudo systemctl reload apache2.service
한번씩 해 주고, 80 포트와 443포트 접속 규칙을 수정한다.
cd /etc/apache2/sites-available/ 을 먼저 들어가서 000-default.conf 와 default-ssl.conf 가 있는지 확인한다.
두 파일이 잘 있으면, 일단
sudo a2ensite 000-default.conf
sudo a2ensite default-ssl.conf
해 준다.
위와 같이 하면 각각의 규칙이 site-available에서 site-enabled 으로 넘어가게 된다. (둘 다 같은 파일 혹은 규칙을 가리키는..??)
(a2ensite의 반대는 a2dissite 이다.)
#HTTP/HTTPS 강제 전환
000-default.conf의 내용을 수정해야 한다.
sudo vim 000-default.conf
해서 안의 내용을 보고, 아래 내용을 적어준다.
아래 내용은 HTTP 요청을 HTTPS로 강제 re-direction해 준다.
RewriteEngine on
RewriteCond %{SERVER_NAME} =본인의 웹페이지 주소(예를 들면: xxx.zzz)
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
#SSL 인증서 디렉토리 확인
sudo vim /etc/apache2/sites-enabled/default-ssl.conf
혹은
sudo vim /etc/apache2/site-available/default-ssl.conf
(둘 다 같은 파일을 가리키는…?) 하면 내용이 쭉 나오는데..
SSLCertificateFile /etc/letsencrypt/live/사용자도메인/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/사용자도메인/privkey.pem
을 찾아서 사용자 도메인 부분을 적절히 수정하고 저장한다.
이후에 아래 명령어 한 번씩 해 준다.
sudo a2enmod rewrite
sudo systemctl reload apache2.service
이제 홈페이지 접속시 HTTP 가 자동으로 HTTPS로 redirection 되는지 확인한다.
#워드프레스 고유주소(permalink) 에러 해결
이제 외부에서 블로그에 접속을 시도하면 HTTP로 들어오고자 해도 자동으로 HTTPS로 들어오게 된다.
그러므로, default-ssl.conf만 손을 보면 워드프레스 고유주소(permalink) 한글 문제도 해결할 수 있다.
.htaccess를 손 보는 것 말고 다른 방법으로 시도해보겠다.
sudo vim /etc/apache2/site-available/default-ssl.conf
들어가서 아래 내용을 붙여넣는다.
<Directory /var/www/html/wordpress/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
위 내용 중 Directory는 워드프레스가 설치된 경로를 입력하면 된다.
/html까지 일 수도 있고, 더 하위로 내려갈 수도 있습니다.
sudo systemctl reload apache2.service
재실행 한 번 해 주고, 고유주소(permalink)가 잘 변경되는지 확인해본다.
도움받은 사이트: 워드프레스 고유주소 변경 후 404 에러 해결