VPS의 CentOS에 워드프레스 설치 총정리

VPS의 CentOS에 워드프레스 설치 총정리


필요사항

1. VPS 호스팅
2. 도메인
3. DNS 서비스
4. 워드프레스 설치와 관련된 제반사항들




VPS 추천사이트


도메인 등록사이트
국내 : http://www.hosting.kr/   ,  해외  :  http://www.mydomain.com/

DNS 서비스


땅과 집주소를 구했다면 이제 집을 지어 보겠다.


1. 웹서버설치
2. 디비설치 및  DB생성
3. FTP설치 선택사항
4. 워드프레스 설치 및 각종 설정



아래 글 참고해서 웹서버, 디비 설치


yum upgrade
yum groupinstall "Web Server"
yum install php mysql-server php-mysql
yum install setuptool system-config-securitylevel-tui

system-config-firewall-tui를 실행, customize를 선택 후 특정서비스 방화벽 해제
service httpd restart
service mysqld restart

chkconfig httpd on
chkconfig mysqld on

mysqladmin -u root -p

mysql_secure_installation
- db password 입력 (아까 생성한 db password 입력)
- password 변경(이미 password를 만들었으므로 N)
- anonymous user 삭제(Y)

- root의 원격 mysql login 비허용(Y)
- mysql의 초기 test DB 삭제(Y)
- 변경 즉시 적용 여부(Y)

mysql -u root -p
create database wordress;


이 글 참고해서 디비 유저 생성 및 권한 배정


[유저 생성 명령어]
create user '<아이디>'@'접속영역(localhost or %)' identified by '<패스워드>';
ex) create user 'songgun'@'%' identified by 'songgun';


[권한 주기 명령어]
grant <부여할 권한> on <권한 줄 DB명>.*to '<아이디>'@접속영역(localhost or %)';
ex) grant all privileges on *.* to 'songgun'@'%' with grant option;

적용
flush privileges;


이글 참고해서 FTP 설치,  워드프레스 사용 시 FTP는 필요없기에 보안상 설치 안해도 무방함


yum -y install vsftpd

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=YES -> no 로 변경 (익명 유저 로그인을 차단)
chroot_list_enable=YES (주석 풀기)
chroot_list_file=/etc/vsftpd/chroot_list (주석 풀기)
chroot_local_user=YES (추가)


vi /etc/vsftpd/chroot_list

test1 (권한을 부여할 일반계정 추가)




service vsftpd start
chkconfig vsftpd on

* 방화벽 추가

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT (추가)

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT (추가)



service iptables restart

iptables -nL (포트 추가된거 확인)




워드프레스 퍼머링크 수정 시 설정해주어야하는 작업


.htaccess 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress


서버페이지에 워드프레스 설치 시..
4: RewriteBase /myblog/
8: RewriteRule . /myblog/index.php [L]





워드프레스를 2차 도메인으로 설치하고자 할 때.

한 서버에서
domain.com , blog.domain.com , photo.domain.com 을 함께 운영하고잘 할 때 아래 처럼 설정한다.

물론
DNS 서비스

이 사이트에서 A레코드를 함께 등록해주어야 한다.



[root@nootl /]# find / -name "httpd.conf"
/etc/httpd/conf/httpd.conf

vi /etc/httpd/conf/httpd.conf

NameVirtualHost *:80
ServerName 127.0.0.1


<VirtualHost *:80>
    ServerAdmin master@domain.com
    DocumentRoot /var/www/html
    ServerName www.domain.com
    ServerAlias domain.com
    ErrorLog "/var/log/domain.com-error_log"
    CustomLog "/var/log/domain.com-access_log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin master@domain.com
    DocumentRoot /var/www/html/blog
    ServerName blog.domain.com
    ErrorLog "/var/log/blog.domain.com-error_log"
    CustomLog "/var/log/blog.domain.com-access_log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin master@domain.com
    DocumentRoot /var/www/html/photo
    ServerName photo.domain.com
    ErrorLog "/var/log/photo.domain.com-error_log"
    CustomLog "/var/log/photo.domain.com-access_log" common
</VirtualHost>




<Directory "/var/www/html">
Options FollowSymLinks
AllowOverride All
</Directory>

/usr/sbin/httpd -k restart   또는 service httpd restart