가끔 크롬 브라우저를 통해 인터넷 검색을 하다 보면, 특정 사이트 페이지에 'http error 400' 오류 문구가 노출되면서, 페이지가 열리지 않을 때가 있습니다. 오늘 이러한 http error 400 오류에 대처하여 해결하는 방법을 간단하게 알려드리니, 참고 바랍니다.

이러한 http error 400 오류는 쉽게 얘기하여, 브라우저 cookie가 충돌을 일으켜서 발생하는 오류인데요. 열림을 원하는 특정 사이트의 누적된 cookie와의 문제로 인해서 발생한 것이기 때문에, 해당 cookie를 삭제하면 해결이 됩니다.

즉, 오늘의 내용은, 크롬 브라우저에서 특정 사이트의 cookie를 지우는 창을 찾아, http error 400 오류를 해결하는 것이 주목적입니다. 해당 크롬 브라우저의 메뉴 위치만 확인하면 해결이 되는 아주 간단한 방법입니다.

http error 400 해결 방법

1. 크롬 브라우저의 설정 메뉴로 이동

  • 크롬 브라우저 우측 상단 모서리에 '전체 메뉴(:)' 클릭
  • 펼침 메뉴에서 '설정' 클릭

 

2. 쿠키 및 기타 사이트 데이터 메뉴 클릭

  • 설정 - '보안 및 개인정보 보호 클릭.
  • 펼침 메뉴에서 '쿠키 및 기타 사이트 데이터' 메뉴 클릭

 

3. '모든 쿠키 및 사이트 데이터 보기' 메뉴 클릭

 

4. 차단된 사이트의 쿠키 선별

  • 우측 검색란에 차단된 '특정 사이트 도메인' 입력 (사진 참조)

 

5. 해당 사이트 쿠키 데이터 삭제

  • 특정 사이트의 모든 쿠키를 삭제하려면 우측 상단 '표시된 항목 모두 삭제'
  • 선택하여 삭제를 원하시면, 쿠키를 선별하여 삭제 가능

 

6. http error 400 문제 해결

  • 크롬 브라우저 주소란에 해당 사이트명 입력 후 접속 확인
  • (저의 경우 tistory.com 페이지가 차단되었었는데요! 해결)

 

이상 http error 400 크롬 브라우저 접속 오류 해결방법에 대한 정보를 정리하여 드렸습니다. 실제 오류를 해결하는데 드는 시간은 1분도 안 걸릴 정도로 매우 간단합니다.

출처 : https://hongejae.tistory.com/entry/http-error-400-%ED%81%AC%EB%A1%AC-%EC%98%A4%EB%A5%98-%EA%B0%84%EB%8B%A8-%ED%95%B4%EA%B2%B0%EB%B0%A9%EB%B2%95

'Works > Network' 카테고리의 다른 글

100Mbps, MB/s로 변환 방법 및 변환한 속도  (0) 2018.04.25
통신사별 DNS 서버 정리  (0) 2017.04.21
서버호스팅 트래픽 계산  (0) 2016.11.08
랜선 만들기 (Direct & Cross Cable)  (0) 2016.07.07

* login shell & non-login shell 이란

/etc/profile, ~/.bash_profile, ~/.bashrc, /etc/bashrc 파일들은 장치 관리 및 사용자 환경을 위한 설정 파일입니다.

위 파일들의 차이점을 알기 위해선 먼저 login shell과 non-login shell을 알아야 합니다.

 ·  login shell : 처음 리눅스를 부팅하고 터미널을 켰을 경우 특정 shell로 접속이 되면 login shell.

 ·  non-login shell : 터미널을 켰을 때 특정 shell로 들어가지 않고 직접 sh 등의 명령어로 특정 shell에 들어가야 할 경우 non-login shell.

=> 예를 들어 새로운 환경변수를 설정할 때 non-login shell 일 경우 .bashrc 파일을 이용해야 합니다.

 

* login shell (profile)

시스템에 로그인하면 login shell로 동작한다고 보면 됩니다. 기본 로그인 쉘인 bash는 login shell로 동작할 때 profile을 읽습니다.

/etc/profile은 /etc/profile.d 디렉토리 안에 존재하는 모든 쉘 스크립트를 실행시는 역할을 합니다.
/etc/profile.d 디렉토리에는 vim, qt, lang, colorls 등 다양한 설정이 sh 파일 형태로 존재하고 최초 로그인 시 /etc/profile을 통해 실행됩니다. (로그인 시 /etc/profile을 먼저 읽고 이후 홈디렉토리의 ~/.profile을 읽음)

 

· 실행 순서

   1. /etc/profile
   2. ~/.bash_profile    or    ~/.bash_login    or    ~/.profile
   3. ~/.bashrc
   4. /etc/bashrc

 

/etc/profile 과 .profile은 shell이 bash 쉘이 아니라도 로그인 시 적용되고, 

.bashrc와 .bash_login, .bash_profile은 bash 쉘로 로그인 되었을 경우만 적용이 됩니다.

리눅스의 기본 로그인 쉘은 bash 쉘로 bashrc는 bash 쉘에서 사용하는 run command 라는 의미를 가집니다. 
사용자가 임의로 로그인 쉘을 변경할 경우 변경한 쉘에 맞는 cshrc, tcshrc, kshrc 파일이 bashrc와 같은 역할을 합니다.

/etc/profile 과 .profile은 shell이 bash가 아니라도 로그인하면 로드되어 적용되고,

.bashrc 와 .bash_login, .bash_profile은 bash shell로 로그인 되었을 경우만 적용이 됩니다.

 

- /etc/profile

: 시스템 전역(모든 사용자)에 대한 환경설정 파일. 로그인시 설정 내용을 읽어들임. 시스템 전반적인 환경값들을 설정.

- ~/.bash_profile

: 개인 사용자에 대한 환경설정 파일. 로그인시 설정 내용을 읽어들임. 각 사용자 환경에 맞는 설정.

 

bashrc 파일을 수정해도 로그인 할 때 반영되는 이유는 /etc/profile이 /etc/bashrc 파일을 읽어오고

~/.profile이 ~/.bashrc 파일을 읽어오도록 구현되어 있기 때문입니다.

=> 환경 설정은 profile 파일에 alias 및 함수 설정은 bashrc 파일 저장하는 것을 권장하고 있습니다.

 

* interactive (rc file)

bash가 아닌 다른 shell에서 bash를 호출할 때 interactive로 동작합니다. 이 때 bash는 rc file을 읽습니다.

bashrc 파일은 bash가 수행될 때 실행되는 함수를 제어하는 지역적인 시스템 설정과 관련된 파일입니다. 

 

- /etc/bashrc

: 시스템 전역(모든 사용자)에 대한 환경설정 파일. 새로운 bash가 실행될 때 마다 내용을 읽어들임.

- ~/.bashrc

: 개인 사용자에 대한 환경설정 파일. bash가 실행될 때 마다 내용을 읽어들임.

 

/etc/profile은 부팅후에 적용되며

~/.bash_profile은 재로그인 하면 적용되나

source 명령어를 이용하여 바로 적용할 수 있습니다.

출처 : https://coding-chobo.tistory.com/72

※ 요약
필자는 간간이 ssh를 이용하고 있고, 가끔 접속 장애가 일어난다. 접속 장애가 일어났을때 매번 찾지 않기 위해 블로그에 정리해둔다. 출처는 땡깡님의 블로그이다.
 
※ 정리
1. 접속 대상이 없을 경우
ssh: connect to host 192.168.0.10 port 22: No route to host
서버가 down 상태이거나 ip 정보가 틀린 경우
 
2. netfilter(iptables)로 막아 놓았을 경우
ssh: connect to host 192.168.0.200 port 22: No route to host
웹서비스는 정상 접속되는 상태에서 ssh 접속이 안되는 경우
 
3. ssh 서비스가 구동중이지 않은 경우
ssh: connect to host 192.168.0.200 port 22: Connection refused
 
4. tcp_wrapper(/etc/hosts.deny)로 막아 놓은 경우
ssh_exchange_identification: Connection closed by remote host
 
5. 서비스 포트가 틀린 경우
ssh: connect to host 192.168.0.200 port 22: Connection refused
 
1번, 2번의 경우 접속 에러 로그는 동일하나 ping test 또는 다른 서비스 접속을 통해 어느 원인인지 확인 가능
3번, 5번의 경우 에러로그 상으로는 파악 불가

출처 : https://shaeod.tistory.com/582

아래와 같은 시스템로그가 계속 발생하는 것은 문제 없는, Info성 메시지이다. 하지만 이 부분이 거슬릴 경우 해당 메시지가 쌓이지 않도록 설정할 수 있다.

 

1. 아래 커맨드 입력을 통해 해당 로그가 쌓이지 않도록 설정해주자.

echo 'if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Starting User Slice of" or $msg contains "Removed session" or $msg contains "Removed slice User Slice of" or $msg contains "Stopping User Slice of") then stop' >> /etc/rsyslog.d/ignore-systemd-session-slice.conf

 ( 한줄이다. )

 

2. 설정파일 적용을 위해 rsyslog 재시작을 해주자.

systemctl restart rsyslog

 

출처 : https://growingsaja.tistory.com/217

RockyLinux8 이상에서 부팅시 생성되는 /var/log/dmesg 파일이 존재하지 않는 현상이 있었다.
이를 해결하기 위해 아래 방법을 수행하면 된다.

1) vi /etc/systemd/system/dmesg.service 파일에 아래 내용 추가  (해당 파일은 없으니 만들어야 함)

 [Unit]
 Description=Create /var/log/dmesg on boot
 ConditionPathExists=/var/log/dmesg

 [Service]
 ExecStart=/usr/bin/dmesg
 StandardOutput=file:/var/log/dmesg

 [Install]
 WantedBy=multi-user.target

2) /var/log/dmesg 파일 생성 및 SeLinux 컨텍스트 확인 (Selinux가 비활성화 상태면 dmesg파일만 만들면 된다.)

 # touch /var/log/dmesg
 # restorecon -v /var/log/dmesg (selinux 비활성화면 이 라인은 스킵)

3) 부팅 시 서비스가 시작되도록 활성화

 # systemctl enable dmesg

4) 시스템 재시작 (재부팅 후 /var/log/dmesg 파일 생성 및 파일 내용 확인 할 것)

 #shutdown -r now 또는

#systemctl start dmesg.service (재부팅 없이 즉시 시작도 가능)
#systemctl status dmesg.service (데몬 기동이 이상이 없는지 체크)

 

참조 : https://www.getpagespeed.com/solutions/the-var-log-dmesg-file-is-not-created-during-boot-for-rocky-linux-8