본문 바로가기

전체 글114

라이믹스(XE1)에서 통합검색을 비활성화하는 방법 라이믹스(XE1)에서 통합검색을 여러 이유로 쓰고 싶지가 않을 때가 있다. 그 경우 통합검색을 비활성화하는 방법은 통합검색 대상을 모두 지우는 것이다. 관리자 페이지로 이동후 '고급'-'설치된 모듈'-'통합검색'에 가서 아래의 사진처럼 '대상'에 있는 것을 모두 지운다. 모두 지워졌으면 '등록'을 눌러서 저장을 한다. '대상'에서 '선택된 대상만 검색'을 꼭 설정해줘야 한다. 위의 사진처럼 통합검색을 시도하려고 하면 결과가 위에처럼 나오는 것을 알 수 있다. 2021. 4. 28.
[CentOS 7] 워드프레스 설치 중 'Permission denied'가 발생하는 경우 워드프레스를 설치 중에 '데이터베이스 연결을 구축하는 중 오류입니다'라는 메시지가 떠서 'wp-config.php'파일을 수동으로 생성하고 디버그 옵션을 활성화시키니 'Permission denied'라는 메시지가 나타났다. 나의 경우는 데이터베이스 서버를 별도로 두고 있었기 때문에 SELinux에서 데이터베이스로 연결을 차단하여 발생하는 문제였다. 1. 아파치 웹서버 네트워크 연결 권환 활성화 아래의 명령어를 입력하여 네트워크 연결 권한을 활성화한다. setsebool httpd_can_network_connect_db=1 2. 워드프레스 설치 진행 잘 적용이 되면 워드프레스 설치화면을 새로고침한다. 아래처럼 워드프레스 설치화면이 나타나면 잘 된 것이다. 2021. 4. 18.
[CentOS 7/8] 클라우드 플레어만 서비스 받을 수 있도록 접근 제한 클라우드 플레어를 통해서만 웹 서비스를 제공하기 위해서는 서버로 직접 요청이 오는 것을 차단할 필요가 있다. 본 글에서는 리눅스 방화벽에서 클라우드 플레어 서버만 웹 서비스 제공을 받도록 설정하는 것을 다룬다. 아래의 링크에 가면 클라우드 플레어 서버 IP 주소를 확인할 수 있다. 이 IP 주소를 방화벽 개방 명령어를 입력하여 개방하면 된다. 클라우드 플레어 IP 주소 범위 : www.cloudflare.com/ko-kr/ips/ 아래의 명령어와 사진처럼 방화벽 개방 명령어를 입력하면 정상적으로 개방 설정이 완료된다. firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="103.21.244.0/22" port protoc.. 2021. 4. 18.
[CentOS 7] HAProxy 최신 버전 설치하기 HAProxy는 소프트웨어 기반 L7 스위치라고 흔히 부른다. HAPROXY를 사용하면 응용 계층 프로토콜까지의 정보를 토대로 패킷 스위칭을 할 수 있기에 WAS(Web Application Server)를 여러대 두는 경우 로드밸런싱 등의 용도로 사용할 수 있다. 본 글에서는 CentOS 7에서 HAProxy를 설치하는 방법에 대해서 다룬다. YUM을 활용하여 설치하는 경우 구버전만 가능하다. YUM으로 설치하는 방법은 아래 링크에서 확인할 수 있다. 링크 : [CentOS 7] HAProxy를 YUM으로 설치하기, 공학코드, 2021-04-08. 1. HAProxy의 최신 버전을 확인한다. 공식 홈페이지로 가서 사용가능한 HAProxy 버전을 확인한다. 본 글에서는 안정화된 가장 최신 버전인 2.3... 2021. 4. 8.
[CentOS 7] HAProxy를 YUM으로 설치하기 Cent HAProxy를 YUM으로 설치하는 것은 편리하지만 현재 구버전만 지원된다. 1. HAProxy 설치 아래의 명령어를 입력하여 HAProxy를 설치한다. yum install -y haproxy 아래의 명령어를 입력하여 HAProxy가 잘 설치되었는지 확인한다. haproxy -v 2. HAProxy 시작 및 자동 실행 등록 아래의 명령어를 입력하여 HAProxy 서비스를 시작한다. systemctl start haproxy 아래의 명령어를 입력하여 HAProxy 서비스가 CentOS 부팅시 자동으로 실행되도록 설정한다. systemctl enable haproxy 2021. 4. 8.
[CentOS 7] 아파치 웹서버 "Permission denied" 오류 조치 아파치 웹서버를 구축하여 자신의 서비스를 개발하다보면 다음과 같은 "Permission denied"라는 오류가 발생한다. 파일 사용 권한 문제인데 파일 소유주와 그룹, 그룹별 사용 권한을 이미 설정하여 권한을 부여했는데도 발생하면 SELinux 때문에 발생하는 문제이다. 1. 오류화면 2. SELinux 정책 수정을 통한 권한 부여 아래와 같이 명령어를 입력하여 읽기 권한을 부여하면 대게 문제는 해결된다. chcon -R -t httpd_sys_content_t 대상경로 쓰기 권한이 필요하다면 아래의 명령어를 입력하면 된다. chcon -R -t httpd_sys_rw_content_t 대상경로 참고문서 [1] RHEL/CentOS 7 httpd SELinux policy 변경, lesstif. 2021. 4. 8.
[CentOS 7/8] 아파치 웹서버(HTTPD) HTTPS(SSL) 적용하기 아파치 웹서버의 가상호스트(Virtual Host) 기능을 이용하여 도메인별로 HTTPS를 적용하는 방법을 소개한다. SSL 인증서는 아래의 참고 링크를 확인하여 생성한다. 참고링크 : "인증서 생성하기[CentOS 7/8] HTTPS 서비스를 위해 SSL 인증서 생성하기", 공학코드, 2021-04-08. 1. SSL 모듈 설치 먼저 아파치 웹서버가 SSL을 사용할 수 있도록 SSL 모듈을 설치한다. yum install mod_ssl -y 2. HTTPS(SSL) 설정 아래의 명령어를 입력하여 HTTPS 설정 파일을 생성한다. /etc/httpd/conf.d/ssl.conf "ssl.conf" 파일 안에 아래의 설정을 자신의 상황에 따라 적절하게 입력한다. Listen 443 https SSLPass.. 2021. 4. 8.
[CentOS 7/8] 아파치 웹서버(HTTPD) HTTP 비활성화 하기 아파치 웹서버를 설치하게 되면 기본적으로 HTTP 프로토콜이 80번 포트로 통신하게 되어 있다. HTTPS 통신만 해서 HTTP 통신이 필요 없는 경우 비활성화하는 것이 보안상 유리하기에 본 글에서는 아파치 웹서버의 HTTP 통신을 비활성화하는 것을 다룬다. 위의 사진처럼 명령어를 입력하여 아파치 웹서버 설정 파일을 연다. 45번 줄의 포트번호를 주석처리한다. 127번 줄부터 160번 줄까지 활성화되어 있는 기본 문서 경로를 주석처리한다. 2021. 4. 8.
[MariaDB] Incorrect string value "\xF0\x9F\x8E\xB5\x0A\x0A" 이모지 오류 조치 MariaDB를 데이터 저장소로 사용하고 있는 프로그램을 개발 중에 특정 문자열을 추가(INSERT)하니 "(0x80004005): Incorrect string value: '\xF0\x9F\x8E\xB5\x0A\x0A' for column" 이런 오류가 발생하는 경우가 있다. 이런 문자값은 보통 이모지를 입력했을 때 나타나며 이모지를 나타내기 위해서는 4바이트가 필요하다. 하지만 현재 설정된 인코딩이 그 값을 지원하지 못하고 있지 못하면 저런 오류가 발생한다. 이를 해결하기 위해서는 데이터베이스 인코딩 설정을 'utf8mb4'로 하면 제대로 동작한다. 1. MariaDB 인코딩 설정을 변경한다. 아래와 같이 명령어를 입력하여 MariaDB 서버의 인코딩 설정을 변경한다. vi /etc/my.cnf.d.. 2021. 4. 8.
[CentOS 7/8] 고정(static) IP 주소 설정 서버 컴퓨터를 구축하다보면 서버 수가 적으면 DHCP로 IP 주소를 통제하는 것보다는 수동으로 서버별로 IP 주소를 할당하는 것이 더 나을 때가 많다. 본 글에서는 서버에서 고정 IP 주소를 설정하는 것을 다룬다. 1. 네트워크 인터페이스 확인 네트워크 인터페이스 목록과 각 인터페이스별 설정 값을 확인한다. 이더넷 네트워크 인터페이스인 "ens32"가 현재 "192.168.0.73"으로 자동(DHCP) 할당되어 있는데 "192.168.0.221"로 변경하겠다. ip addr show 2. 네트워크 인터페이스 설정 파일 수정 아래의 명령어를 입력하여 설정파일을 텍스트 에디터로 연다. 컴퓨터마다 네트워크 인터페이스의 이름이 다를 수 있기 때문에 "/etc/sysconfig/network-scripts/네트워.. 2021. 4. 6.
[CentOS 7] MariaDB 방화벽 허용 CentOS 7은 방화벽 때문에 자신의 컴퓨터가 아닌 다른 컴퓨터에서 접근 하는 것을 기본적으로 차단하고 있다. 웹 서버와 DB 서버를 분리한 경우 웹 서버에서 DB 서버로 접근할 수 있도록 방화벽을 허용해줄 필요가 있다. 명령어는 아래 사진과 같다. 방화벽 허용 정책 설정 firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="아이피주소/서브넷마스크" port protocol="프로토콜명" port="포트번호" accept" firewall-cmd --reload 방화벽 허용 정책 삭제 firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source addre.. 2021. 4. 6.
[CentOS 7] IP 주소 확인하는 법 CentOS에서 IP 주소를 확인하는 방법은 여러가지가 있겠지만 본 글에서는 터미널에서 명령어로 IP 주소를 확인하는 법을 다룬다. 아래 처럼 명령어를 입력하면 가지고 있는 네트워크 인터페이스 목록과 해당 네트워크 인터페이스의 IP 주소 값 등을 확인할 수 있다. ip addr show 현재 네트워크 인터페이스는 "lo"와 "ens32"로 두 가지가 있는데 "lo"는 자기 자신을 호출 하기 위한 루프백 인터페이스이며 "127.0.0.1"로 설정되어 있다. "ens32"로 이름이 설정된 이더넷 네트워크 인터페이스는 "192.168.0.73"로 IP 주소가 설정되어 있는 것을 확인할 수 있다. 2021. 4. 6.
[.NET] "hostfxr.dll could not be found" 오류 해결법 .NET으로 만든 프로그램을 배포하다보면 "hostfxr.dll could not be found"라는 오류 메세지가 아래의 사진처럼 나타날 때가 있다. 내용을 살펴보면 .NET 실행환경이 구축되어 있지 않아서 발생하는 문제이며 .NET Runtime을 설치하면 해결된다. 내용 중에 다운로드 링크가 있는데 저 링크를 통해서 다운받으러 가도 되고 아니면 필자가 아래에 입력한 링크로 가서 받아도 된다. .NET 다운로드 주소 : dotnet.microsoft.com/download 사용하고자 하는 버전의 .NET을 적절히 다운 받아서 설치하면 된다. 실행만 한다면 Runtime만 설치해도 된다. 2021. 4. 6.
[C#] 프로젝트 프레임워크를 .NET 5.0으로 변경하기 여러가지 이유로 .NET 5.0으로 C# 프로그램을 개발해야할 때가 있다. 나는 C# 프로그램을 개발할 때 Visual Studio 2019를 사용하고 있는데 예전에 설치한 버전이라서 5.0 런타임을 설치하고 다른 종속성 패키지들도 업데이트할 필요가 있었다. 하지만 설치 및 업데이트 후에도 '프로젝트 속성'-'애플리케이션'-'대상 프레임워크'에서 .NET 5.0이 아래처럼 설정 목록에 없었다. 이 경우는 텍스트 에디터로 프로젝트 설정을 바꿔주면 된다고 MSDN(Microsoft Developer Network) 문서에 있었기에 아래처럼 내용을 확인하고 바꾸니 .NET 5.0으로 잘 설정되었다. 프로젝트 설정 파일은 프로젝트 폴더로 가서 '프로젝트명.csproj'으로된 파일이다. 이 파일을 메모장이나 자신.. 2021. 4. 3.
[IIS 10.0] 클라우드 플레어 서버만 접근할 수 있도록 접근 제한 클라우드 플레어를 경유해서만 서버에 접근하게 하기 위해서는 서버로 직접 요청이 오는 것을 차단할 필요가 있다. 방화벽에서 차단하는게 제일 안전한 방법이겠지만 상황에 따라서는 IIS에서 요청을 차단해야할 수 있다. 그 경우에는 아래의 주소에 가서 클라우드 플레어 서버의 IP 범위를 확인한 후 아래의 사진처럼 IIS의 'IP 주소 및 도메인 제한' 기능으로 가서 설정을 하면 된다. 클라우드 플레어 IP 주소 범위 : www.cloudflare.com/ko-kr/ips/ 2021. 3. 30.
[CentOS 7/8] MariaDB 재설치하기 MariaDB를 설치하고 이것저것 테스트하던 중 정전이 발생하여 MariaDB 관련 데이터가 상당히 망가졌다. 복구를 하려고 했으나 내 능력에선 복구에 실패했다. 다행히 데이터베이스 자료는 백업되어 있었기 때문에 재설치하기로 하였다. 1. 기존 MariaDB 설치 확인 yum list installed mariadb\* 위의 명령어를 입력하여 MariaDB 가 설치되어있는 것을 확인한다. 2. 기존 MariaDB 삭제 아래의 사진과 같이 아래의 명령어를 이용하여 삭제한다. yum remove MariaDB-server.x86_64 3. MariaDB 설치 아래의 명령어를 입력하여 MariaDB를 설치한다. yum install mariadb mariadb-server 4. MariaDB 시작 아래의 명령.. 2021. 3. 29.
[CentOS 7] MariaDB "max_open_files" 경고 조치 MariaDB 오류가 발생한 것 때문에 이것 저것 조치하고 있다보니 눈에 거슬리는 경고문이 있어서 조치를 했다. 아래와 같이 MariaDB 서비스를 시작할 때 "[Warning] Could not increase number of max_open_files to more than 16384 (request: 32186)"라고 경고문이 발생했었다. 위의 경고문은 MariaDB 서비스 파일을 수정하여 조치할 수 있다. vi /lib/systemd/system/mariadb.service 위의 명령어를 입력하여 MariaDB 서비스 파일을 텍스트 에디터로 연다. 위와 같은 구문이 있을 수도 있고 없을 수도 있는데 있다면 적당한 숫자를 기입하거나 무한대로 아래와 같이 입력한다. 없으면 적당한 위치에 아래의 설정.. 2021. 3. 28.
XE1 "Call to undefined function mysql_connect()" 오류 조치 XE1로 운영 중인 사이트가 잘 되다가 업데이트 후에 아래와 같은 메시지가 뜨면서 동작하지 않을 때가 있다. 이는 데이터베이스 설정파일의 MySQL을 지칭하는 속성명이 바뀌어서 발생하는 문제이기에 설정을 수정하면 해결할 수 있다. Fatal error: Uncaught Error: Call to undefined function mysql_connect() in 2021. 3. 28.
[CentOS 7/8] MariaDB 인코딩 설정하기 MariaDB에서 기본적으로 사용할 인코딩을 지정해야 자동으로 무언가를 할 때든 협업할 때든 간에 일이 수월하게 풀린다. CentOS 7에 설치한 MariaDB의 인코딩을 바꾸는 방법은 다음과 같다. 1. MariaDB 설정 파일 열기 vi /etc/my.cnf.d/server.cnf 2. MariaDB 설정 파일 수정 적당한 곳에 인코딩 설정을 입력한다. 필자의 경우 UTF-8로 지정하기 위해 아래처럼 입력했다. character_set_server = utf8 2021. 3. 28.
[CentOS 7/8] 시스템 시간을 한국 시간으로 변경하기 CentOS를 설치할 때 별도 시간 설정 없이 진행하면 아래와 같이 한국 시간이 17시 53분이지만 뉴욕 시간으로 나타나서 로그 파일을 볼 때 상당히 불편하다. 아래와 같은 명령어로 서울 시간으로 시스템 시간을 변경하면 한국 시간으로 로그파일이 잘 나타나는 것을 확인할 수 있다. sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime 2021. 3. 27.