내 브라우저로 서버 인터넷 사용하기

데이터셋을 유튜브에서 모으다 보면, 다음과 같은 에러에 직면할 때가 있다.

ERROR: Unable to download webpage: HTTP Error 429: Too Many Requests (caused by ); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

read more

ccmaker v1.3.8 설치

ccmaker은 어도비 프로그램을 불법으로 다운로드 할 수 있게 도와주는 프로그램이다. (cc 2018 까지만)

1. CCmaker 다운로드

https://old.reddit.com/r/sjain_guides/wiki/downloads#wiki_ccmaker.3A

위 사이트에 들어가서

이 중 하나를 눌러 다운로드 하자. 내 경우에는 구글 드라이브는 제대로 다운로드가 되지 않았다.
파일은 압축파일로 되어 있고, 암호화가 되어 있기 때문에, 같이 업로드 된 password.txt에 적혀있는 암호로 압축파일을 풀어주자. 참고로 윈도우 기본 압축해제 프로그램으로는 암호화 압축 풀기가 안되므로, 알집이나 WinRAR을 사용해주자.

read more

디시 사진 리사이징 안된 상태로 올리기

디시는 사진올릴때 용량 제한이 10mb로 있고, 크기 제한도 없지만, 대신 글을 읽으러 들어가면 리사이징된 사진이 먼저 보인다.
글 본문에는 장축 850으로 리사이징된 상태로 보여지고, 클릭 해야지만, 원본 사진이 보인다 (jpg 한정, png는 그대로 올라옴).
아마 서버 용량보다는 인터넷 트래픽이 더 비싸고, 사용자 입장에서 글이 더 금방금방 뜨도록 하는 이유인거 같다.

뭐 클릭해서 보면 되지만 디씨 앱의 경우 클릭해도 작아진 사진만 보인다.

이를 수정하는 스크립트를 만들었다. 원리는 디씨 서버에 올라간 원본 사진의 URL을 찾아서 글 본문 HTML에서 URL만 원본으로 교체하는 것이다.

  1. 일단 글을 그냥 올리자.
  2. 개발자모드, 콘솔에 들어가서 아래 스크립트를 친다.

images = document.getElementsByClassName("writing_view_box")[0].getElementsByTagName('img'); for (let value of images) { id = value.onclick.toString().split("'")[1].split("id=")[1]; value.src = value.src.split("id=")[0] + "id=" +id; } document.getElementsByClassName("writing_view_box")[0].children[2].innerHTML

read more

Jetpack Carousel 수정

ImageMagick 설치

제일 먼저 imagemagick을 설치해주자. WP는 기본적으로 GD library를 사용하는데, 이 경우 thumbnail에서 metadata가 사라진다. 우리는 모든 이미지에 대해서 metadata가 필요하다. 워드프레스는 metadata를 가져올 때, 원본 이미지에서 가져오는데, 모든 metadata를 가져오지 않는다. XMP의 경우 사진 파일이 클 수 록 가져오는 속도가 느리기 때문에, thumbnail에 XMP를 유지 시킨 뒤, thumbnail에서 XMP를 가져올 것이다.

sudo apt-get install php-imagick
sudo apt install imagemagick
sudo service apache2 restart

이후 ImageMagick을 활성화 시키는 플러그인을 설치해 주자. 이 플러그인은 activate만 하면 자동으로 활성화 된다. 다만 이 플러그인은 새로 업로드 한 사진에만 적용된다.

Photon 해제

Photon은 XMP metadata를 지워버리므로 해제 시켜주자.

플러그인 파일 수정

환경설정 -> edit plugin으로 들어가서
jetpack/modules/carousel/jetpack-carousel.php을 선택하자

그 다음 링크를 참조해서,

function getXmpData($filename, $chunkSize) { if (!is_int($chunkSize)) { throw new RuntimeException('Expected integer value for argument #2 (chunkSize)'); } if ($chunkSize < 12) { throw new RuntimeException('Chunk size cannot be less than 12 argument #2 (chunkSize)'); } if (($file_pointer = fopen($filename, 'r')) === FALSE) { throw new RuntimeException('Could not open file for reading'); } $startTag = '<x:xmpmeta'; $endTag = '</x:xmpmeta>'; $buffer = NULL; $hasXmp = FALSE; while (($chunk = fread($file_pointer, $chunkSize)) !== FALSE) { if ($chunk === "") { break; } $buffer .= $chunk; $startPosition = strpos($buffer, $startTag); $endPosition = strpos($buffer, $endTag); if ($startPosition !== FALSE && $endPosition !== FALSE) { $buffer = substr($buffer, $startPosition, $endPosition - $startPosition + 12); $hasXmp = TRUE; break; } elseif ($startPosition !== FALSE) { $buffer = substr($buffer, $startPosition); $hasXmp = TRUE; } elseif (strlen($buffer) > (strlen($startTag) * 2)) { $buffer = substr($buffer, strlen($startTag)); } } fclose($file_pointer); return ($hasXmp) ? $buffer : NULL; }

read more

php 7.2로 업그레이드

sudo apt-get install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt update sudo apt install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mysql php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-gd php7.2-xml php7.2-cli php7.2-zip sudo cp /etc/php/7.0/apache2/php.ini /etc/php/7.2/apache2/php.ini sudo systemctl restart apache2.service sudo a2enmod php7.2 sudo a2dismod php7.1 sudo systemctl restart apache2.service

read more

Linode IP 변경

Linode의 경우 각각의 Linode에 대해서 IP를 바로 변경할 수 는 없게 되어 있지만, 가지고 있는 Linode와 IP를 Swap할 수는 있게 되어 있다.

  • 바꾸고 싶은 Linode와 같은 서버에 새로운 Linode 생성
  • 설정 -> networking -> ip transfer을 통해서 ip 변경
  • 새로 만든 linode 삭제
  • Reboot
  • (선택) domain A/AAAA record 변경
  • 하루만 기다리기
  • read more