Search Results for '프로그래밍'
1208 posts related to '프로그래밍'
- 2018/08/03 SEO 사이트맵 제작 프로그램
- 2018/08/03 정규식으로 유투브 주소에서 아이디 값만 추출
- 2018/08/03 PHP ucfirst - 문자열의 첫 번째 문자를 대문자로 만듭니다.
- 2018/08/03 도메인 변경 및 http 를 https 로 이동하는 방법
- 2018/08/03 네이버 클로버 tts
- 2018/08/03 jQuery 폼의 첫번째 입력가능한 필드에 FOCUS 주기
- 2018/08/03 리눅스에서 <?php 는 작동하는데 <? 로 시작하면 파일 깨질때
- 2018/08/03 PHP 배열 내장함수 - array_change_key_case
- 2018/07/30 우분투에 sendmail 설치 설정
- 2018/07/29 멀티 도메인 멀티 루트의 Letsencrypt 인증서 만들기
- 2018/07/25 마리아DB(RDBMS)에서 NoSQL처럼 유동적인 필드만들기
- 2018/07/25 PHP session expires 헤더의 비밀!
- 2018/07/25 브라우저 Agent 정보
- 2018/07/25 시군 구 동 DB 자료
- 2018/07/25 css 도형샘플 사이트
- 2018/07/25 이름 마지막 한자리 별표 처리
- 2018/07/25 랜덤 이름 생성기
- 2018/07/25 아이프레임(iframe) 높이(height:세로) 자동조절
- 2018/07/25 다음 실시간 검색어 10개 추출
- 2018/07/25 네이버 실시간 검색어 20개 추출
- 2018/07/25 그누보드에서 자주사용하는 php함수모음
- 2018/07/25 지정된 숫자까지 카운트업하는 숫자 애니메이션
- 2018/07/25 SSL 보안서버 적용시 fa아이콘 사용자 깨짐현상 해결 방법
- 2018/07/25 전화번호 형식 입력 jquery 플러그인
- 2018/07/25 letsencrypt 추가 및 갱신 방법 - 우분투
- 2017/12/01 Mysql .frm 과 .idb파일만 남았을때 테이블 구조 및 데이터 복구
- 2017/07/05 Python 배포용 실행파일 만들기(PyInstaller)
- 2017/05/21 How to Install PHP 7 on Ubuntu 15.10, 15.04 & 14.04 using PPA
- 2017/05/21 How to Install PHP 5.4 or PHP 5.5 or PHP 5.6 on Ubuntu 16.04, 14.04 or…
- 2017/05/21 Ubuntu 16.04 : Nginx, PHP 7, MySQL 5.7 설치
<?php $client_id = ""; $client_secret = ""; $txt = $_GET['txt']; if(!$txt) $txt = '텍스트 파라미터를 입력 바랍니다.'; $encText = urlencode($txt); $postvars = "speaker=mijin&speed=0&text=".$encText; $url = "https://openapi.naver.com/v1/voice/tts.bin"; $is_post = true; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, $is_post); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch,CURLOPT_POSTFIELDS, $postvars); $headers = array(); $headers[] = "X-Naver-Client-Id: ".$client_id; $headers[] = "X-Naver-Client-Secret: ".$client_secret; curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec ($ch); $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close ($ch); if($status_code == 200) { header("Content-type: audio/mpeg"); header("Content-Transfer-Encoding: binary"); header('Pragma: no-cache'); header('Expires: 0'); echo $response; } else { echo "Error 내용:".$response; }
문제는 1일 1만자 입니다.
https://youngsam.net/BrowserAgentInfo.php
function DaumKeyWord(){ $Curl = curl_init(); curl_setopt($Curl, CURLOPT_URL, "https://www.daum.net/"); curl_setopt($Curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER, FALSE); $Result = curl_exec($Curl); $Rand[0] = explode("<span class=\"txt_issue\">", $Result); for($i=1; $i < count($Rand[0]); $i++){ $Rand[1] = explode("</span>", $Rand[0][$i]); $ReturnData = trim(strip_tags($Rand[1][0])); if($ReturnData){ $ReturnArray[] = $ReturnData; } } $ReturnArray = array_unique($ReturnArray); foreach($ReturnArray as $ReturnArray) $Return[] = $ReturnArray; return $Return; } $DaumKeyWord = DaumKeyWord(); print_r($DaumKeyWord);
function NaverKeyWord(){ $Curl = curl_init(); curl_setopt($Curl, CURLOPT_URL, "https://datalab.naver.com/keyword/realtimeList.naver?where=main"); curl_setopt($Curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER, FALSE); $Result = curl_exec($Curl); $RandList = explode("<ul class=\"rank_list\">", $Result); $RandList = explode("</ul>", $RandList[1]); $Rand[0] = explode("<span class=\"title\">", $RandList[0]); for($i=1; $i < count($Rand[0]); $i++){ $Rand[1] = explode("</span>", $Rand[0][$i]); $ReturnData = trim(strip_tags($Rand[1][0])); if($ReturnData){ $Return[] = $ReturnData; } } return $Return; } $NaverKeyWord = NaverKeyWord(); print_r($NaverKeyWord);
미리 mysql의 데이터를 백업시켜놓지 않고 db가 터져서 접속이 불가능한 상태이기 때문에 .frm파일과 .idb파일만 남아서 이것을 이용해서 복구해야 했기에
재가 썻던 방법을 남깁니다.
.frm에는 테이블 스키마가 남겨져 있는데
shell>mysqlfrm --diagnostic <복구하고 싶은 frm이 담겨있는 mysql database의 경로>
여기서 shell이란 linux terminal과 windows powershell 다 포함됩니다.
또한 ibd는
frm에서 나온 테이블을 추가해준 후에
1. alter table <table.name> discard tablespace
2. 복구하고 싶은 idb파일을 해당 db가 있는 폴더에 넣어준다.
3. alter table <table.name> import tablespace
4. .cfg오류는 무시해도 좋습니다.
주제: Python 으로 만들 어플을 배포용 실행 파일로 만들자.
1. 프로그램 선택 시행 착오.
. 기존에 TkInter 을 사용했을때는.. Py2Exe 를 이용해서 실행 파일을 만들었다.
근데... 이게 PyQt 를 이용했을때는 어떤때는 잘 되다가 어떤때는 에러가 난다.
그래서 실행 파일을 만드는 다른 툴을 찿기로 했다.
Py2Exe , cx_Freeze ... 두개를 구글링 하면서 이것 저것 다 해 보았다. 안된다....
2. 프로그램 선택과 테스트결과
. pyInstaller ... 검색중에 PyInstaller 이란 프로그램이 있단디.
일단.. 다운 받고 설치하고 테스트..... 와우 끝내 준다.... 1개의 파일로 만들고... Win7 winXp
다 돌아 간다.
3. 설치 과정.
A. pywin32 설치.
. pyinstaller 는 PyWin32 나 pypiwin32 가 설치되어 있어야 한다.
. 만약에 설치되어 있지 않다면 pip로 pyinstaller 설치하면 pypiwin32 가 자동으로 설치된다.
.pip 에서 pywin 이 자동설치가 안되는 경우 먼저 다음 사이트에서 pywin32 를 다운 받는다.
http://sourceforge.net/projects/pywin32/files/pywin32/
에서 Build 219 를 선택.
난 os를 Win7 64bit 를 쓰지만 호환성때문에 Python3.4 32Bit 를 쓴다.
그래서 pywin32-219.win32-py3.4.exe 를 다운로드 해서 설치 했다.(설치은 그냥 된다.)
B. pyinstaller 설치
. 기존에 설치했던 버전은 실행파일이 한글로 된폴더에 있으면 에러가 난다.
. 그래서 새버전을 설치하기로 했다.
방법1
. pyinstaller 가 업그레이드 되어서 이제는
pip install pyinstaller 또는
pip install -U pyinstaller
로 설치하면 이상없이 설치된다.
방법2
. 아래사이트에 접속해서
PyInstaller 3.0 (zip) 을 다운받아 압축을 푼다.
. 다시 CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.
python setup.py install
추가 : pyinstaller 3.2 로 업그레이 하려고 했더니 unicode cp949 코덱 관련 오류가 난다
그래서 아예 개발자 버전 3.3 으로 설치했다.
PyInstaller-3.3.dev0+483c819 future-0.16.0
설치 방법은 아래/
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip
A. 시행착오
. pip install -U pyinstaller 요걸로는 잘 안된다.
중간에 에러가 난다.( PyWin32 가 설치 안되어서 일수도)
. http://www.pyinstaller.org 에서 자신의 파이썬 버전과 맞는 것을 다운 받는다.
내 경우 Python3.4 이므로 하단의 Py3.zip 파일을 다운 받아 압축을 풀었다.
.CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.
python setup.py install
... 헉.... 에러가 난다... console 창의 에러 메세지를 보니... PyWin32 가 설치 되어 있어야한단다.
PyInstaller 를 설치 하기 위해서는 PyWin2가 받드시 설치 되어 있어야 한다.
( 아마 , Py2exe 나 cx_Freeze 가 에러난 이유도 이것 PyInw32가 설치 안되어서 인듯.)
B. 설치 성공
. 다시 CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.
python setup.py install
와 에러 없이 잘 설치 된다. 굿......
다 설치하고 나서야 PyInstaller 설명서 를 찿았다.
http://pythonhosted.org/PyInstaller/#installing-using-pip
4. 실행 파일 만들기.
cmd 창을 열어서 내가 만든 소스가 있는 폴더로 이동.
다음과 같이 입력.
pyinstaller --onefile --noconsole --icon=아이콘파일이름.ico 소스파일(내파일이름)
내경우 배치파일을 만들었다 (make_exe.bat 내용은 별거 없다 아랫줄. )
pyinstaller --noconsole --icon="main.ico" "SvrCheckPs.py"
위의 명령처럼 실행하면 소스가 있는 폴더 아래이 build 와 dist 폴더가 생성된다.
dist 폴더안에 파일을 배포하면 된다.
5. Pyinstaller 옵션.
--vsrsion :현재 설치된 pyinstaller 버젼.
--onefile :한개의 파일로 만듬. 초기로딩 여러개의 파일일때보다 약간 느림.
1개의 파일로 만들경우 win7/xp는 실행되나
winows 8.1/10 은 압축을 풀지못한다는 에러 메세지 나오며 실행안됨.
--noconsole : 윈 gui 어플이므로 console 창을 열지 않는다.
--icon=아이콘파일이름: 실행파일의 아이콘이름.
Install PHP 7
Use the following set of commands to add PPA for PHP 7 in your Ubuntu system and install it.
$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ondrej/php $ sudo apt-get update $ sudo apt-get install -y php7.0
Check PHP Version
Now use the following command to check installed php version on your system.
$ PHP 7.0.1-4+deb.sury.org~trusty+1 (cli) ( NTS ) Copyright (c) 1997-2015 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
Install PHP 7 Modules
You may also need to install modules based on your application requirements. Use the following command to find our available php 7 modules.
$ php7.0-common - Common files for packages built from the PHP source libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module) php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary) php7.0-cli - command-line interpreter for the PHP scripting language php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary) php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary) libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library) php7.0-dev - Files for PHP7.0 module development php7.0-dbg - Debug symbols for PHP7.0 php7.0-curl - CURL module for PHP php7.0-gd - GD module for PHP php7.0-imap - IMAP module for PHP php7.0-intl - Internationalisation module for PHP php7.0-ldap - LDAP module for PHP php7.0-pgsql - PostgreSQL module for PHP php7.0-pspell - pspell module for PHP php7.0-recode - recode module for PHP php7.0-snmp - SNMP module for PHP php7.0-tidy - tidy module for PHP php7.0-json - JSON module for PHP php-all-dev - package depending on all supported PHP development packages php7.0-sybase - Sybase module for PHP php7.0-modules-source - PHP 7.0 modules source package php7.0-sqlite3 - SQLite3 module for PHP php7.0-mysql - MySQL module for PHP php7.0-opcache - Zend OpCache module for PHP
Now install modules which is required for you.
$ sudo apt-get install php7.0-mysql php7.0-curl php7.0-json php7.0-cgi
How to Install PHP 5.4 or PHP 5.5 or PHP 5.6 on Ubuntu 16.04, 14.04 or…
프로그래밍/리눅스 & MY-SQL | 2017/05/21 12:12Install PHP 5.4
Use the following set of command to add PPA for PHP 5.4 in your Ubuntu system and install PHP 5.4.
$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ondrej/php5-oldstable $ sudo apt-get update $ sudo apt-get install -y php5
Check Installed PHP Version:
# php -v PHP 5.4.35-1+deb.sury.org~precise+1 (cli) (built: Nov 19 2014 19:34:07) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
Install PHP 5.5
Use the following set of command to add PPA for PHP 5.5 in your Ubuntu system and install PHP 5.5.
$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ondrej/php $ sudo apt-get update $ sudo apt-get install -y php5.5
Check Installed PHP Version:
# php -v PHP 5.5.19-1+deb.sury.org~precise+1 (cli) (built: Nov 19 2014 19:32:57) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
Install PHP 5.6
Use the following set of command to add PPA for PHP 5.6 in your Ubuntu system and install PHP 5.6.
$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ondrej/php $ sudo apt-get update $ sudo apt-get install -y php5.6
Check Installed PHP Version:
# php -v PHP 5.6.3-1+deb.sury.org~precise+1 (cli) (built: Nov 19 2014 19:34:53) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
Installing Nginx with PHP 7 and MySQL 5.7 (LEMP) on Ubuntu 16.04 LTS
Nginx(발음 “engine x”)는 무료이며 오픈소스이고 높은 성능의 HTTP 서버이다. Nginx는 매우 적은 자원을 사용하면서 안정적이고 풍부한 기능들을 가지고 있다. 또한 설정도 매우 간단하다. 본 지침서는 우분투 16.04 서버에서 PHP 7(PHP-FPM), MySQL 5.7을 지원하는 Nginx 설치를 설명하고 있다. LEMP = Linux + nginx(engine x) + MySQL + Linux
1. 준비 단계
이 지침서에 호스트 이름은 server1.example.com, 아이피 주소는 192.168.1.100을 사용한다. 이 설정은 사용자마다 다르므로 적절하게 수정 후 사용해야 한다. 이 지침서의 모든 단계는 루트 권한으로 진행하였다. 다음과 같이 루트(root)로 :
sudo -s
2. MySQL 5.7 설치
MySQL을 설치하기 위해서 다음과 같이 실행한다. [root@server1 ~]#
은 터미널의 프롬프트이다. 타이핑하는 것은 아니다.
[root@server1 ~]# apt-get -y install mysql-server mysql-client
New password for the MySQL "root" user: <-- yourrootsqlpassword
Repeat password for the MySQL "root" user: <-- yourrootsqlpassword
데이터베이스의 보안을 위해 익명사용자와 테스트 데이터베이스를 제거하기 위해 다음을 실행한다.
[root@server1 ~]# mysql_secure_installation
위의 명령을 실행 후 다음의 몇 가지 질문에 답을 하자.
Enter password for user root: <-- Enter the MySQL root password
...
Press y|Y for Yes, any other key for No: <-- Press y if you want this function or press Enter otherwise.
...
Change the password for root ? ((Press y|Y for Yes, any other key for No) : <-- Press enter
...
Remove anonymous users? (Press y|Y for Yes, any other key for No) : <-- y
...
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : <-- y
...
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : <-- y
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : <-- y
3. Nginx 설치
Apache2가 이미 설치되어 있다면 Nginx를 설치하기 전에 Apache2를 제거한다.
[root@server1 ~]# service apache2 stop
[root@server1 ~]# update-rc.d -f apache2 remove
[root@server1 ~]# apt-get remove apache2
이제 Nginx를 설치한다.
[root@server1 ~]# apt-get -y install nginx
// 시작은 다음과 같이
[root@server1 ~]# service nginx start
제대로 설치되었는지 확인하기 위해 웹 브라우저에서 주소를 입력해 본다 (예, http://192.168.1.100). 기본 페이지가 보이면 설치 성공이다. 그리고 Nginx의 웹 문서의 기본 디렉터리는 /var/www/html
이다.
4. PHP 7 설치
PHP-FPM(FastCGI Process Manager)를 이용한다1. FastCGI 데몬 소켓은 /run/php/php7.0-fpm.sock
에서 확인할 수 있다.
[root@server1 ~]# apt-get -y install php7.0-fpm
5. Nginx 설정
vi(또는 nano)편집기를 이용하여 다음의 설정파일을 편집한다2.
[root@server1 ~]# vi /etc/nginx/nginx.conf
[root@server1 ~]# vi /etc/nginx/sites-available/default
예를들면 기본 디렉터리는 설정은 root /var/www/html;
이다. 그리고 php 연동을 위해 다음과 같이:
[root@server1 ~]# vi /etc/php/7.0/fpm/php.ini
// 다음과 같이 설정한다.
cgi.fix_pathinfo=0:
[root@server1 ~]# service nginx reload
[root@server1 ~]# service php7.0-fpm reload
이제 /var/www/html/
에 info.php
파일을 하나 만들고 웹에서 확인 : <?php phpinfo(); ?>
6. PHP에서 MySQL 지원 및 기타 주요기능 설치
[root@server1 ~]# apt-get -y install php7.0-mysql php7.0-curl php7.0-gd php7.0-intl php-pear php-imagick php7.0-imap php7.0-mcrypt php-memcache php7.0-pspell php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl php7.0-mbstring php-gettext
[root@server1 ~]# service php7.0-fpm reload
7. 기타 설정 (옵션)
TCP Connection
[root@server1 ~]# vi /etc/php/7.0/fpm/pool.d/www.conf
...
;listen = /var/run/php5-fpm.sock
listen = 127.0.0.1:9000
...
[root@server1 ~]# php7.0-fpm reload
[root@server1 ~]# vi /etc/nginx/sites-available/default
...
fastcgi_pass 127.0.0.1:9000;
...
[root@server1 ~]# service nginx reload
- PHP-FPM의 자세한 내용은 https://php-fpm.org/를 참고하자. ↩︎
- 설정파일 예제, https://www.nginx.com/resources/wiki/start/topics/examples/full/ ↩︎