# 아래부터 버그 해결을 위해 추가해 주실 옵션입니다. # 502 에러를 없애기 위한 proxy 버퍼 관련 설정입니다. proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k;
# 502 에러를 없애기 위한 fastcgi 버퍼 관련 설정입니다. fastcgi_buffering on; fastcgi_buffer_size 16k; fastcgi_buffers 16 16k;
# 최대 timeout 설정입니다. fastcgi_connect_timeout 600s; fastcgi_send_timeout 600s; fastcgi_read_timeout 600s;
# 이 아래 설정은 PHP 성능 향상을 위한 옵션입니다. 추가해 주시면 좋습니다. sendfile on; tcp_nopush off; keepalive_requests 0;
방법 2. nginx의 설정 파일과 php-fpm 설정 파일의 소켓 일치시키기
– 간혹 nginx의 설정 안에서의 ‘fastcgi-pass’ 경로와, php-fpm 설정 파일의 listen 경로가 다른 경우, 502 Bad gateway 에러가 나타나는 경우가 있다고도 합니다. 이런 경우에는 PHP를 불러오는 대다수의 경우의 에러가 발생하는 경우가 많습니다.
– 먼저 nginx 설정 파일에서 PHP를 처리하는 부분의, fastcgi-pass 값을 확인하여 PHP-fpm sock 파일이 정상적으로 위치해 있는지 확인합니다. (없는 경우에는, sock 파일을 찾아서 적당한 경로로 입력해 주어야 합니다. 많은 경우에는 /var/ 디렉토리 안에서 php 관련 폴더 안에 위치하고 있습니다.)
1. vi /etc/vsftpd/vsftpd.conf 열기 2. 아래항목 추가 및 저장 => pasv_enable=YES pasv_min_port=50000 pasv_max_port=50001
3. 포트추가 => vi /etc/sysconfig/iptables => -A INPUT -p tcp -m state --state NEW -m tcp --dport 50000 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 50001 -j ACCEPT
4. 서비스 재시작 => service vsftpd restart => service iptables restart
ntsysv와 chkconfig는 사용방법과 실행결과에 조금씩 차이는 있으나 부팅시에 자동 실행할 서비스들을 관리한다는 점에서 같은 목적을 가진 도구이다. 즉, 두가지 모두 런레벨에 따른 자동실행 서비스를 설정하는 역활을 하게 된다.
1. ntsysv 리눅스 부팅시 각 부팅레벨 (0번부터 6번까지)별로 실행시키거나 실행시키지 않을 서비스들을 설정하는 유틸리티이다. 이 유틸리티는 setup를 실행하여 "System service" 항목을 선택하여 실행 할 수 있다.
- 설정법 : nesysv --level [0123456] 예) ntsysv --level 35 1023456중 하나만 선택해도 되고 2개이상 선택해도 된다. 만약 --level옵션을 사용하지 않는다면 현재 런레벨의 설정이 변경 된다.
2. chkconfig chkconfig는 /etc/rc.d/rcN.d의 각디렉토리에 있는 S로 시작하는 링크파일과 K로 시작하는 링크파일을 생성/삭제함으로써 부팅시에 자동실행할 서비스를 결정할 수 있다.
1) chkconfig 리스트 확인
2) chkconfig 리스트항목에 서비스 등록 및 제거 - 등록 : chkconfig --add 서비스명 서비스 등록시 /etc/rc.d/rcN.d 디렉토리에 해당서비스의 링크파일이 생성된다.
- 제거 : chkconfig --del 서비스명 서비스 제거시 /etc/rc.d/rcN.d 디렉토리에 해당서비스의 링크파일이 삭제 된다.
3) 부팅시 특정 서비스 자동실행 설정하기 (chkconfig 리스트의 on, off 설정) - 자동실행 설정 (on으로 설정) : chkconfig --level [런레벨] [설정할데몬명] on 예) chkconfig --level 35 httpd on (httpd의3,5런레벨을 자동실행) * --level 옵션을 사용하지 않으면 런레벨 2,3,4,5 번이 on으로 적용 된다.
- 자동실행 해제 설정 (off 로 설정) : chkconfig --level [런레벨] [설정할데몬명] off 예) chkconfig --level 35 httpd off (httpd의3,5런레벨을 자동실행 해제) * --level 옵션을 사용하지 않으면 런레벨 2,3,4,5 번이 off으로 적용 된다.
4) 기타참고 사항 - ntsysv(서비스목록에 등록됨) = chkconfig로 서비스 등록시 : /etc/rc.d/rcN.d/디렉토리에 해당 링크파일이 생성된다. - ntsysv(*설정)와 chkconfig로 서비스 on 설정시 : /etc/rc.d/rcN.d/디렉토리에 해당 링크파일의 앞자리가 S로 표시됨. - ntsysv(*설정 해제)와 chkconfig로 서비스 off 설정시 : /etc/rc.d/rcN.d/디렉토리에 해당 링크파일의 앞자리가 N로 표시됨. - ntsysv(서비스목록이 없어짐) = chkconfig로 서비스 제거시 : /etc/rc.d/rcN.d/디렉토리에 해당 링크파일이 삭제 됨
1. CentOS MariaDB 10.1.9 설치 1.1. vi /etc/yum.repos.d/MariaDB.repo 아래내용 입력후 저장 => [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 1.2. yum install -y MariaDB MariaDB-server MariaDB-client 1.3. mysql --version (mariaDB 버전확인) 1.4. Mariadb 상태 변경 및 확인 => systeomctl start mariadb (시작) => systeomctl enable mariadb (부팅시 자동실행 설정) => systeomctl status mariadb (상태확인) => systeomctl stop mariadb (정지) => systeomctl restart mariadb (재시작) 1.5. mysql_secure_installation (root 비번설정) ======================================================================= Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation.
Set root password? [Y/n] y New password: Re-enter new password: // 비빌번호설정 Password updated successfully! Reloading privilege tables.. ... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment.
Remove anonymous users? [Y/n] y ... Success!
Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y // 원격접속 ... Success!
By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment.
Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success!
Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
Reload privilege tables now? [Y/n] y ... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB installation should now be secure.
Thanks for using MariaDB! =======================================================================