레이블이 PHP인 게시물을 표시합니다. 모든 게시물 표시
레이블이 PHP인 게시물을 표시합니다. 모든 게시물 표시

2018년 8월 16일 목요일

플그램 : XAMPP 로" Apache + PHP + MySQL" 를 쉽게 간단하게 설치

예전엔 "APM Setup" 이라는 프로그램이 있어 Apache + PHP + MySQL 를 쉽게 설치 할수 있었다.

하지만, 이미 오래전부터 "APM Setup" 은 더이상 업데이를 하지 않고 있다. 그래서 과거버젼 (PHP 5.x) 을 사용하는게 아니라면 이제 더이상 "APM Setup" 을 사용할수 없게 되었다.

다행이도  Apache + PHP + MySQL 을 지원하는 패키지는 APM Setup 말고도 있다.

그 중 하나가 "XAMPP".

공식사이트 : https://www.apachefriends.org

배포처 : https://sourceforge.net/projects/xampp/

XAMPP을 이용하면 Apache + PHP + MySQL 을 별다른 절차 없이 쉽게 설치 할수 있다.


일단 배포처에서 설치 파일을 다운 받는다.
기본적인 "Download" 기능을 이용하면 최신 버젼의 "설치파일" 을 다운 받을 수 있다.
이 경우에는 설치에 별다른 설명이 필요 없으니 그냥 알아서 설치 하면 된다.

나의 경우는 Apache 를 굳이 상시로 켜놓을게 아니라 필요할때 그냥 그때 그때 잠시 쓰는게 목적이라서 설치 파일을 다운 받은것이아니라 "포터블" 버젼을 다운 받아서 쓴다.


"Files" 메뉴에 보면 여러가지 버젼의 프로그램파일들이 있으니 필요에 따라 다운 받아 쓰면 된다. 설치본이 필요하면 "installer" 문구가 달린 파일을, 나처럼 포터블 버젼이 필요하면 "portable" 문구가 있는 파일을 다운 받으면 된다.


설치과 포터블 버젼은 거의 용량 차이가 없지만, 포터블 버젼이 약간 더 크다.


포터블 버젼을 다운 받아서 압축을 풀었으면, 해당 디렉토리의 "setup_xampp.bat" 파일을 실행시켜 준다.


그럼 이런 터미널 창이 뜨는데, 이 메시지를 보았다면 설치는 끝난 것이다.


설치가 끝났으니, 이제 아파치를 구동해 보자.
"xampp-control.exe" 를 실행시켜 컨트롤판넬을 띄운다.


이 상태에서 "Start" 버튼을 클릭하면 간단히 아파치 웹서버가 실행... 되어야 하지만, 유감스럽게도 나의 경우는 오류가 발생했다.

이미 다른 웹서버를 쓰고 있는 중인데 이 웹서버가 80 포트를 사용중이기 때문에 오류가 발생하는 것이다.


환경 설정을 위해서 "Config > Apache(http.conf)" 메뉴를 선택.


여기서 "Listen 80" 이라는 항목을 적당한 포트로 변경해 준다. 나의 경우는 "Listen 888" 로 변경해 주었다.


이렇게 설정을 변경후 다시 "Start". 이번에는 문제 없이 실행 되었다.
여기서 "Admin" 버튼을 클릭하면 기본 페이지로 이동한다.


어차피 기본 홈페이지를 보여주는 것이라 그냥 "http://localhost:888" 만 웹브라우져에 입력해 주어도 된다. 만약 나의 경우처럼 사용포트를 변경했을 경우엔 페이지를 찾을수 없다라고 뜰텐데, 당황하지 않고 경로에 포트번호를 추가 해주면 잘 열릴 것이다.


참고로 압축푼 디렉토리에 "passwords.txt" 파일에 보면 기본으로 설정되어 있는 패스워드가 기록되어 있으며, 보다시피 MySQL 에는 비밀번호가 설정되어 있지 않다.


그렇기 때문에 컨트롤 판넬에서 MySQL 의 "Admin" 버튼을 클릭시 바로 MySQL 관리자 페이지가 열리니, 가급적 관리자 비밀번호를 변경해 주는 것이 좋다.


2018년 4월 30일 월요일

infinityfree.net : 제로 보드 설치

무료 호스팅 사이트 infinityfree.net 에 제로 보드를 설치해 보았다.

참고 : 무료 웹호스팅 "infinityfree.net"

그러고보니 이젠 "제로보드" 라는 명칭을 사용하지 않고, "XE(XpressEngine)" 이라는 명칭을 사용한다.


설치 파일은 https://www.xpressengine.com/ 에서 다운 받을 수 있다.

배포처 : https://www.xpressengine.com/


다운로드 링크로 가보면  "XE Core" 라는 항목이 있는데 이걸 다운 받으면된다.


다운 받은 파일을 압축을 풀어서, infinityfree.net 계정에 업로드 한다.
다운받은 압축 파일을 통채로 올려서 설치할수 있으면 좋을텐데, 안타깝게도 infinityfree.net 의 무료 계정은 10M 가 넘는 파일은 업로드 할수 없다. 그러니 어쩔수 없이 제로보드 설치 파일을 다운 받아 압축을 푼다음에 직접 FTP 를 이용해 파일을 업로드 해야 한다.


문제는 압축을 풀면 파일 수가 꽤 많고, 해외 서버이다 보니 파일 전송이 조금 느리다.
그러다 보니 시간이 좀 많이 걸린다. 큰 파일 하나 전송하는 것은 그다지 느리지 않지만, 파일 수가 많은경우 좀 전송이 느렸다. (대충 30분 정도 걸린것 같다)


파일을 다 업로드 했으면, "http://자기계정Url/업로드디렉토리" 로 접속해 보면 제로보드 설치 화면이 나타난다. (나의 경우는 "http://son10001.epizy.com/xe")


그 다음 단계의 선택사항은 별것 없다.


DB 선택에서 DB접속 방법을 묻는데, 어느걸 선택해도 그렇게 크게 차이날게 없으니 아무거나 해도 별 상관은 없을 것이다. (나의 경우는 트랜젝션을 지원하는 것을 선택했다. 앞으로 필요할지도 모르니까.)


그리고 그 다음 단계전에 infinityfree.net 계정 관리에서 "phpMyAdmin" 항목을 사용해 DB 명을 미리 알아 둔다.


그런다음에 제로보드 설치 화면에서 DB 정보를 입력해 주면, 사실상 제로보드 설치는 다 끝난것이다.


관리자 정보까지 다 입력하고 "완료" 버튼을 클릭해 주면....


이렇게 제로보드 사이트가 만들어진다.
예전에 비해서 많이 깔끔해 졌는데다, 반응형으로 만들어져 있어 모바일 페이지까지 지원한다.


상단 메뉴를 사용하면 게시판도 정상적으로 동작하는것을 볼수 있다.


해외 호스팅 업체인데도 한글도 별 문제 없이 사용가능하다.


상단의 톱니바퀴 아이콘을 이용하면 관리자 페이지로 이동할 수 있는데, 여기서 회원관리및 게시판 관리를 할수 있다.

이것으로 제로보드 설치는 모두 끝났다.
정말 간단하지 않은가?
이걸 이제 어떻게 쓰는지가 문제일 뿐이다.


아... 그런데, 게시판 하나 만들었는데 무슨 테이블이 저렇게 많이 만들어 지는지...
이제 "제로보드" 라는 "게시판" 이라기 보다는, 하나의 "컨텐츠 빌더" 로 사용되고 있는만큼 기능도 예전에 비해서 많이 늘었고, 그만큼 복잡해졌다는 반증이다.

제로보드 설치를 끝내놓고 DB 테이블을 보니 골치가 지끈 지끈 아프다.


2018년 4월 23일 월요일

Site : 무료 웹호스팅 "infinityfree.net"

요즘은 무료로 웹호스팅을 해주는 사이트가 많이 없어졌다.
있다해도 제한이 너무 심하거나, 제공 용량이 너무 작은 곳이 대부분.

하지만, 국외로 눈을 돌리면 아직도 쓸만한 무료 웹호스팅 사이트는 있다.
속도 저하는 감수해야 하겠지만, 개인적인 용도나 테스트 용도로는 별 문제가 없을 것이다.

그중 대표적인 사이트가 "infinityfree.net"

제공 사이트 : https://infinityfree.net/

심지어 이곳은 "무제한" 용량과 "MySql DB" 까지 제공한다.
홈페이지 제작에선 더이상 필요한 것이 없을 정도다.


별다른 절차도 필요 없이 회원가입만 하면 바로 무료 호스팅을 제공 받을 수 있다.


회원가입 정보도 메일외에는 더이상 넣을것도 없이 바로 회원가입이 된다.


회원가입을 완료하면 계정 관리 페이지로 이동하고, 이곳에서 "New Account" 를 선택하여 호스팅 사이트를 개설해야 한다.


개설이라고 해봐야 별것 없고, 도메인명만 지정해 주면된다.
기본적으로 infinityfree 제공해주는 도메인을 기본으로 사용하게된다.
만약 자신이 소지한 도메인을 사용하고 싶다면 아랫쪽의 기능을 이용하면 된다.


도메인 설정이 끝나면, 그 도메인의 비밀번호를 지정한다.
이것은 infinityfree 계정 비번하고는 다른, 사이트 비밀번호다.
쉽게 말해 infinityfree 계정으로 어려개의 사이트를 만든다면, 그 사이트 들이 모든 다른 비밀번호를 가질수 있다는 얘기다.


사이트 비밀번호를 지정하였으면 사이트 생성은 끝났다.
여기서 그 사이트의 컨트롤 판넬로 이동하면 사이트 정보및 관리를 할수 있는 메뉴로 넘어가게 된다.


여러가지 메뉴와 정보가 표시되지만, 중요한 것은 FTP 정보와 MySql 정보.


사이트 등록할 당시 지정했던 도메인을 웹브라우져이 입력해 보면, 기본적인 웹페이지가 나타날 것이다. 위의 페이지가 나온다면 일단 사이트 등록은 문제없이 진행 된 것이다.



PHP 가 문제 없이 동작하는지 확인하기 위해, 파일관리 메뉴로 php 파일을 하나 올려 보았다. 참고로 사이트 관리자에서 바로 파일을 관리할수 있는 기능도 제공하고, FTP 도 제공하니 어느쪽이든 편한 것으로 이용하면 된다. 



PHP 정보를 확인하니 이상없이 PHP 도 작동하는 것을 확인 할수 있었다.


그다음은 MySql.
일단 먼저 DB 를 생성해야 하니, "MySQL Databases" 메뉴를 선택.


이곳에서 원하는 DB Name 을 입력하여 데이터 베이스를 생성한다.
참고로 DB Name 앞쪽의 "epiz_~~~" 는 고정되어 있어 수정할 수 없다.
아마도 다른 사용자와 DB Name 이 겹치는 것을 막는 용도인것으로 추측된다. 


DB 도 생성했으면 "Admin" 메뉴를 선택.


그러면 이렇게 "MySqlAdmin" 메뉴로 이동한다.


일단 테스트용으로 간단한 테이블 하나를 생성해 준다.


그리고, MySQL 접속 용 PHP 파일을 하나 생성하고...


이번에는 파일 관리자가 아니라, FTP 를 이용해 접속해 본다.
사이트 관리페이지에 나오는 사용자 아이디와 사이트명, 그리고 사이트 패스워드(계정 패스워드가 아님) 를 이용해 로그인하면 정상적으로 로그인이 가능하다.


여기서 PHP 파일을 업로드 한다. 주의 할점은 webroot 가 아닌 "htdocs" 폴더에 파일을 업로드 해야 한다.


그러면 이렇게 MySQL 도 문제없이 접속된다는 것을 확인 할수 있다.


간단하게나마 테스트 해본결과는 아직은 별다른 작업을 해본게 없어서 그런지 속도면에선 별로 느린 느낌은 아니다. FTP 접속을 시도해 봤을때 살짝 굼뜬 느낌이 있지만...

그래도 무제한 용량을 제공한다는 점을 감안하면 충분히 감수하고 쓸수 있을 만한 정도.

이제 무료 호스팅 사이트는 찾아 놨는데, 여기다 뭘 만들지?


2018년 2월 25일 일요일

PHP : 시놀러지 나스에 웹디렉토리를 추가했더니 "No input file specified" 가 발생한다.

시놀러지 나스를 간단한 웹서버 대용으로 쓰고 있는데, 웹디렉토리를 하나 추가 하고 조회를 해 보았더니 "No input file specified" 가 뜬다.


난데없는 오류에 정신이 혼미해 지지만, 진정하자.
일반적인 상황에선 잘 볼수 없는 오류라서 대부분은 당황할 것이다.
하지만, 별로 심각한 오류는 아니다.
특히, 시놀러지 나스를 사용하고 있는경우는 더 간단히 해결할 수 있다.


그냥, 제어판에서 "웹서비스" 항목으로 가서 "PHP 설정" 탭에 있는 "PHP open_basedir" 항목에 추가했던 웹디렉토리 경로를 추가해 주자.



그럼 이렇게 정상적으로 웹페이지가 뜨는 것을 볼수 있다.
이 오류는 그냥 "웹루트" 이하가 아닌 페이지를 접근 할수 없도록 제한되어 있기 때문에 발생하는 오류. 다시말해 추가한 웹디렉토리가 "웹루트" 와 다른 경로이기 때문에 오류가 발생한것. 그러니, "open_basedir" 에 허용디렉토리를 추가해주면 쉽게 해결된다.

시놀러지 나스에선 관리 페이지가 있으니 거기서 그냥 추가해 주면되고, 다른 웹서버를 사용하는 경우에도 관리 페이지를 이용하거나, 아니면 그냥 "php.ini" 에서 "open_basedir" 항목을 찾아서 추가해 주면 된다.