2009-11-10 3 views
1

PHP로 사이트 검색 엔진을 만들고 싶습니다. 사용자는 정보를 보려면 로그인해야합니다. 그래서 나는 구글이나 야후 검색 엔진 코드를 사용할 수 없다.php로 사이트 내 검색 엔진을 구축하는 방법은 무엇입니까?

지금 엔진을 mysql 데이터베이스의 테이블이 아닌 텍스트와 페이지를 검색하도록하고 싶습니다.

누구도 이것을 한 적이 있습니까? 시작하는 데 도움이되는 몇 가지 조언을 주시겠습니까?

+1

전 검색 엔진을 작성했습니다. 어떤 종류의 중간 성능을 원한다면 많은 코드가 필요합니다. 어떤 유형의 플러그인을 찾는 것이 좋습니다. – twolfe18

+0

@ twolfe18 sphider1.3.4와 같은 도구를 찾고 있지만,이 버전에서는 작동하지 않습니다. 다른 도구 또는 플러그인을 알고 계십니까 ?? 감사. –

답변

0

저는 무료 도구 인 sphider을 사용했으며 PHP에서는 잘 작동합니다.

감사합니다.

3

당신은 내용과 페이지의 제목이 이미 관리되는 경우 (예를 들어 cron 작업에서) 사이트에서 수확 페이지, 스트립 HTML을하고 데이터베이스

+0

@Frankie, 무엇을 권하고 싶습니까? –

+0

@ garcon1986 검색 엔진은 어떤 종류의 속도를 가지기 위해 일종의 데이터베이스를 사용해야 할 것입니다. Arnaude가 제안한 것처럼 스핑크스 나 루씬 (Lucene)을 잘 할 여러 가지가 있습니다.파일에 그것을하는 것은 다만 트릭을하지 않을 것이다. – Frankie

0

에 저장합니다 거미가 필요합니다 데이터베이스에 의해, 당신은 PHP에서 검색 엔진을 작성해야합니다. 데이터베이스를 조회하는 솔루션의 많은 예를 들어, 다음과 같습니다 내용이 바로 HTML 파일에서가 아니라 DB에 포함되어

http://www.webreference.com/programming/php/search/

경우, 당신은 거미를 작성 할 수 있습니다.

성능 향상을 위해 결과를 캐싱하는 것이 좋습니다.

나는 모든 것이 웹 사이트/웹 응용 프로그램의 크기와 복잡성에 달려 있다고 말할 것입니다.

0

싫어하는 Expert-Exchange 웹 사이트의 방식을 조금이라도 속일 수 있습니다. 그들은 영리를 목적으로하는 프로그래머의 Q &입니다. StackOverflow와 매우 유사한 사이트입니다. 답변을 보려면 지불해야하지만 때로는 Google 검색 결과에 답변이 표시됩니다. E-E가 웹 크롤러를 위해 다른 페이지를 제시하고 인간을 위해 다른 페이지를 제시한다는 것은 오히려 분명합니다. 동일한 트릭을 사용하여 사이트에 Google 맞춤 검색을 추가 할 수 있습니다. 로그인 한 사용자는 결과를보고 그렇지 않으면 로그인 화면으로 되돌아갑니다.

+0

EE는 크롤러와 google_의 방문자에게 서로 다른 페이지를 제공합니다. 클로킹이라고하는 –

+0

과 나는 그것을 추천하지 않을 것이다. (비록 EE가 그것을하더라도, 그것에 관해서는 그들과 구글과 특별한 계약을 가지고있다) – dusoft

+0

그것은 약간의 특별한 동의를 필요로한다 - 아마 그때가 아니다. –

0

서버를 제어 할 수 있습니까? 그렇다면 색인을 위해서는 Solr/Lucene을, PHP와 상호 작용하려면 SolPHP을 설치하는 것이 좋습니다. 그렇게하면 패싯 및 기타 멋진 전체 텍스트 검색 기능을 사용할 수 있습니다.

나는 실제 페이지를 거미하지 않을 것이다. 대신 탐색과 관련된 내용이 아닌 다른 것들이없는 거미 페이지가 될 것이다.

SOLR requiers Java는 서버에 있습니다.

+0

고마워요.하지만 제 생각에는 자바를 사용하는 것이 더 복잡하다고 생각합니다. 다른 권장 사항이 있습니까? –

+0

그건 diffircult 아니에요 그리고 당신은 매우 강력한 검색 엔진을해야합니다. 절대적으로 자바 프로그래밍이 필요 없습니다. 더 간단한 aproach는 mysql 방식입니다. 당신이 쿼리하는 upp 뷰를 넣는다. – Fontanka16

+0

Fontanka에 감사드립니다. SolPHP를 사용해 보겠습니다. –

관련 문제