WEB 80

PHP 크롤링 일반페이지와 XML파싱할때

가장 많이 사용하는 형태로 curl과 simplexml_load_file의 간단 사용법 $url = "파싱할 주소"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_POST, 0); // 0이 default, POST일 경우 1 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // https사용유부 curl_setopt($ch, CURLOPT_REFERER, $referer); curl_setopt(..

WEB/PHP 2022.07.04

워드프레스 별도 mysqli_query 등 sql 작업을 필요로 할때

워프 대량 작업을 할 시기에 워드프레스 내부에서 워프와는 별개로 만든 테이블에 select나 insert 등 별도의 작업이 필요했음 일반 mysqli_connect로 사용해도 무방하나 워프내에서 워프만의 기능으로 사용하고자 할때라면 이렇게 사용하자. 1. 단일 변수의 결과값 리턴일 경우 2. 다수의 행으로 결과값을 리턴할 경우 3. INSERT문 INSERT문은 일반적인 mysql문과 다르다. 첫번째 테이블명, 2번째에는 컬럼명과 값을 배열로 구성하며, 3번째 배열은 값마다 순차적으로 format을 배열로 입력한다. (%s => string, %d => 정수, %f => 실수) 4. UPDATE문

WEB/PHP 2022.06.30

PHP REMOTE_ADDR로 사용자의 ip가 ipv4인지 ipv6인지 확인하는 방법

기존 흔히 알고 있는 ipv4 주소 체계가 고갈되는 문제로 인해 기존 32비트였던 ip주소 체계에서 -> 128비트의 무제한에 가까운 주소체계가 할당되고 있는데 이것이 ipv6 주소. ipv6주소는 16진수로 0000: 형태로 총 8개의 구조로 연결되고 앞부분 4개는 네트워크 주소, 뒷부분 4개는 인터페이스 주소라고 한다. 대충 쉽게 말해 12년도쯤 한국에 할당된 ipv4가 112,231,936개라 하는데 인터넷에 접속되는 컴퓨터의 증가로 주소가 모자르기 때문에 더 많은 주소 체계인 ipv6주소를 할당하고 있다는 이야기 (실제 ipv6주소는 할당 가능한 수치가 340,282,366,920,938,463,463,374,607,431,768,211,456개라고 한다 +_+;) 작업중 특정 대상에 따른 ip주..

WEB/PHP 2022.06.29

RSS 크롤링시 닫힘태그가 아닌 태그의 요소 파싱하기

특정 사이트의 RSS를 가져오려다가 위와 같이 태그 안의 내용이 아닌 단일 태그형태의 요소를 가져와야 하는 상황 php 코드 $url = "RSS 경로"; $xml = simplexml_load_file($url); foreach($xml->channel->item as $item) { echo $item->title."\n"; echo $item->children("media", true)->content->attributes()['type']."\n"; echo $item->children("media", true)->content->attributes()['url']."\n"; } children으로 태그를 찾고 그 안의 요소를 찾을수가 있다. 늘 그렇듯이 나중에 또 쓰게 될거 같아서 기록

WEB/PHP 2021.08.31

Centos7버전 그누설치시 /install/install_config.php 퍼미션 에러 발생

카페24에서 centos 6.x 버전 지원종료 후 가상서버에서 제공하는 버전은 7버전 apm 설치하고 mariadb까지 설정 sshd / vsftpd 까지 설정하고 사용자 계정 추가 ftp로 파일 올리고 그누를 설치하려 했더니 "You don't have permission to access /install/install_config.php" 카페24에 문의도 해보고 구글링도 열심히 해서 알게된 사실 centos7버전에서 apm 자동설치를 진행할 경우 아파치 웹서버에 modsecuruty 모듈이 자동 설치되고 이는 아파치에서 제공하는 웹 방화벽 모듈 물론 virtualHost 안에서 SecRuleInheritance, SecRuleEngine을 Off 해서 사용할 수도 있지만 여러가지 알아본바로는 htt..

WEB/Server 2021.04.03

Centos7설치이후 가상호스트(VirtualHost)를 설정해도 Testing123... 으로 이동 되는 경우

기존 Centos6.x 버전과는 다르게 mysql의 인수로 인한 MariaDB 기본 탑재등 서알못인 나한테는 계속해서 시련이 다가오는데... 우선 사이트 2개 이상의 구성으로 버추얼 호스트를 설정하는 부분부터 문제가 생겼다. Centos 버전마다 httpd.conf가 조금씩 다른 모습은 이미 알고 있었지만 아무튼 결론만 말하자면 포트 열고 Listen 80 서버 아이피 지정 ServerName 111.222.33.44:80 버추얼호스트 지정하기 전에 granted를 설정해주어야 한다. Options Indexes FollowSymLinks AllowOverride All Require all granted Options Indexes FollowSymLinks AllowOverride All Requir..

WEB/Server 2020.10.03

css background-size:cover 익스8에서도 가능하도록

이미지를 브라우저 크기에 맞추어 풀사이즈로 보여주게 하고 브라우저 크기가 줄어들더라도 센터를 유지하면서 작아지게 하도록 하려 한다. 그리고 1개의 이미지가 아닌 여러장을 나열하는 방식으로 코딩하려고 하는데 background-size:cover 라는 스타일 자체가 익스 9버전부터 작동한다고 해서 찾아봤다. backgroundsize.min.htc 을 이용해서 스타일을 주고 width는 100%, height는 원본 이미지의 크기로 설정한다.

WEB/Html 2016.12.08

CentOs 사용자 계정추가 후 서브도메인 설정

운영 준비중인 사이트에 이미지 전용 사용자를 추가하고 해당 사용자로 접근 가능한 서브도메인을 설정하려고 한다. SSH 루트 접속 // 사용자를 생성한다.# useradd 사용자명 // 생성 확인# cat /etc/passwd | grep 사용자명 // 암호 설정 확인# cat /etc/shadow // 암호 설정# passwd 사용자명Chaneing passwd for user 사용자명New UNIX password: 새로운 암호 입력Retype new UNIX password: 새로운 암호 재입력 // 암호 설정 확인# cat /etc/passwd // 사용자 삭제, 홈 디렉토리는 삭제하지 않을 경우# userdel 사용자명 // 사용자 삭제, 홈 디렉토리까지 삭제할 경우# userdel -r 사용자명..

WEB/Server 2016.11.15