diff --git a/client/src/Pages/Search.js b/client/src/Pages/Search.js
index dbdb27c0506c57d8253a16a2b2e8f71a7b2a71c7..0add168464c9d3d224ef721be9f83f61aec31ef8 100644
--- a/client/src/Pages/Search.js
+++ b/client/src/Pages/Search.js
@@ -2,7 +2,7 @@ import React, { useState, useEffect } from 'react';
 import { Link, Redirect } from 'react-router-dom';
 import ohuh from '../ohuh-sm.PNG';
 import Place from '../Components/Place';
-import { Container, Form, Row, Col, Card, Image, InputGroup, FormControl, Button} from 'react-bootstrap';
+import { Container, Form, Row, Col, Card, Image, InputGroup, FormControl, Button } from 'react-bootstrap';
 import Paginations from '../Components/Paginations';
 import axios from 'axios';
 import queryString from 'query-string'
@@ -17,6 +17,7 @@ function Search(props) {
     const [place, setPlace] = useState([{ name: "", category: "", address: "" }])
     const [imgUrl, setImgUrl] = useState([])
     const [association, setAssociation] = useState([])
+
     const getImg = () => {
         axios.get(`/api/search/imges?keyword=${search}`)
             .then(res => {
@@ -39,15 +40,15 @@ function Search(props) {
             })
     }
 
-    const getAssociation =() => {
+    const getAssociation = () => {
         axios.get(`/api/search/association?keyword=${search}`)
-        .then(res => {
-            console.log("Associations = ", res.data)
-            setAssociation(res.data)
-        })
-        .catch(err => {
-            console.log("search.associations 에러 발생", err)
-        })
+            .then(res => {
+                console.log("Associations = ", res.data)
+                setAssociation(res.data)
+            })
+            .catch(err => {
+                console.log("search.associations 에러 발생", err)
+            })
     }
 
 
@@ -61,11 +62,13 @@ function Search(props) {
         } else {
             setMobile(false)
         }
-    }, []);
-
-
-
 
+        if (state) {
+            props.history.push('/search?keyword=' + search)
+            setState(false)
+            console.log("search야", search)
+        }
+    }, [search]);
 
 
     const places = [{
@@ -91,10 +94,14 @@ function Search(props) {
     }]
 
     if (state !== false) {
-        return ;
+        // console.log(queryString.parse(props.location.search))
+        //  = {keyword:search}
+        // return ;
+        // history.pushState(null, null, "?"+queryParams.toString());
+        // return ;
     }
 
     const handlePage = (num) => {
@@ -107,6 +114,7 @@ function Search(props) {
     }
 
     const handleSubmit = (e) => {
+        // e.preventDefault()
         setState(true);
     }
 
@@ -158,7 +166,7 @@ function Search(props) {
                                         showArr[index] = true
                                         setShowSet(showArr)
                                     }}>{place.name} 자세히 살펴보기
-                                     setShowSet([false, false, false, false])} />
+                                     setShowSet([false, false, false, false])} />
                                 
                             
                         
diff --git a/server/controllers/place.controller.js b/server/controllers/place.controller.js
index f4d2093fb3923a8282dd475f7926924a07219ac2..ebb9ccf83cb013a5e496466f945c78534220bed5 100644
--- a/server/controllers/place.controller.js
+++ b/server/controllers/place.controller.js
@@ -5,87 +5,96 @@ import axios from 'axios';
 
 const searchPlace = async (req, res) => {
 
-    const url = "https://search.naver.com/search.naver?sm=tab_hty.top&where=nexearch&query=" + encodeURI(req.query.keyword)
-    const editUrl = /(http(s)?:\/\/)([a-z0-9\w]+\.*)+[a-z0-9]{2,4}/gi
-    axios.get(url)
-        .then(async (response) => {
-            const html = response.data
-            // console.log(html)
-            fs.writeFileSync("googleReview", html, { encoding: 'utf-8' })
-            let $1 = cheerio.load(html);
+    let DuplicateCheckPlace = await Places.findOne({ name: req.query.keyword })
 
-            let places = {}
-            $1('.ct_box_area').each(function (i) {
-
-
-                // console.log($1('.biz_name').text())
-                // console.log($1('.category').text())
-                // console.log($1('.addr').text())
-                // console.log($1('.t?ime highlight').text())
-
-
-                places[i] = { name: $1('.biz_name').text(), category: $1('.category').text(), address: $1('.addr').text() }
+    if (DuplicateCheckPlace) {
+        res.send(DuplicateCheckPlace)
+        console.log("11111111111111111111111Place################ 기존플레이스줄력중")
+    }
+    else {
+        console.log("2222222222222222222222222222222222222222222222222222222")
+        const url = "https://search.naver.com/search.naver?sm=tab_hty.top&where=nexearch&query=" + encodeURI(req.query.keyword)
+        const editUrl = /(http(s)?:\/\/)([a-z0-9\w]+\.*)+[a-z0-9]{2,4}/gi
+        axios.get(url)
+            .then(async (response) => {
+                const html = response.data
+                // fs.writeFileSync("googleReview", html, { encoding: 'utf-8' })
+                let $1 = cheerio.load(html);
+
+                let places = {}
+                $1('.ct_box_area').each(function (i) {
+                    places[i] = { name: $1('.biz_name').text(), category: $1('.category').text(), address: $1('.addr').text() }
+                })
+                // 값이 비어있거나 에러가 생겼을 때를 대비해 try catch를 해야함
+                const newPlaces = await new Places(places[0]
+                ).save()
+                res.send(places)
             })
-        })
+    }
 }
 
 const searchImg = async (req, res) => {
-    const imgUrl = "https://www.google.com/search?q=" + encodeURI(req.query.keyword) + "+site:tistory.com/&sxsrf=ALeKk023Dv08KQDodRmpB5222lQuzw2Vaw:1610612821100&source=lnms&tbm=isch"
 
-    axios.get(imgUrl)
-        .then(async (response) => {
-            const html = response.data
-            let name = req.query.keyword
-            let $1 = cheerio.load(html);
+    let DuplicateCheckImg = await Places.findOne({ name: req.query.keyword })
+
+    if (DuplicateCheckImg) {
+        if (DuplicateCheckImg.img !== "https://t1.daumcdn.net/thumb/R600x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fqna%2Fimage%2F4b035cdf8372d67108f7e8d339660479dfb41bbd") {
+            res.send(DuplicateCheckImg)
+            console.log("333333333333333333333333333IMG@@@@@@@@@@@@@@@@@@@ 기존이미지줄력중")
+        }
+        else if (DuplicateCheckImg.img === "https://t1.daumcdn.net/thumb/R600x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fqna%2Fimage%2F4b035cdf8372d67108f7e8d339660479dfb41bbd") {
+            console.log("4444444444444444444444444444444444444444444444444")
+            const imgUrl = "https://www.google.com/search?q=" + encodeURI(req.query.keyword) + "+site:tistory.com/&sxsrf=ALeKk023Dv08KQDodRmpB5222lQuzw2Vaw:1610612821100&source=lnms&tbm=isch"
 
             axios.get(imgUrl)
                 .then(async (response) => {
                     const html = response.data
-                    let name = req.params.search
+                    let name = req.query.keyword
                     let $1 = cheerio.load(html);
 
                     let images = $1('.RAyV4b').find('img').attr('src')
 
                     //사진만 업데이트
-                    let Place = await Places.findOne({ name: req.params.search })
+                    let Place = await Places.findOne({ name: req.query.keyword })
                     Place.times.push(new Date().toLocaleString())
-                    await Places.updateOne({ name: req.params.search }, { img: images, times: Place.times })
-
-                    const newPlaces = await new Places(
-                    ).save()
+                    await Places.updateOne({ name: req.query.keyword }, { img: images, times: Place.times })
 
                     res.send(images)
                 })
 
-            //사진만 업데이트
-            let Place = await Places.findOne({ name: req.query.keyword })
-            Place.times.push(new Date().toLocaleString())
-            await Places.updateOne({ name: req.query.keyword }, { img: images, times: Place.times })
+        } else {
+            console.log("IMG에러")
+        }
+    }
 
 
 
-        })
+        }
 
 const searchAssociation = async (req, res) => {
         let Place = await Places.findOne({ name: req.query.keyword })
 
-        if (!Place) {
-            res.send([])
-        }
+    // if (!Place) {
+    //     res.send([])
+    // }
+    if (!Place) {
+        res.status(404).send({ error: "Place.address is null" })
+    }
+    else {
         let addresse = Place.address.split(' ')[0]
 
-        // let AssociationsId = []
-
+        let AssociationsId = []
         let addressPlaces = new RegExp(`${addresse}`)
+        console.log("여기보세요", addressPlaces)
         let responsePlaces = await Places.find({ address: addressPlaces })
         res.send(responsePlaces)
-
-        // responsePlaces.map(Association => {
-        //     AssociationsId.push(Association._id)
-        // })
-        // console.log("Associations = ", Associations)
-        // res.send(AssociationsId)
     }
+    // responsePlaces.map(Association => {
+    //     AssociationsId.push(Association._id)
+    // })
+    // console.log("Associations = ", Associations)
+    // res.send(AssociationsId)
+}
 
 
  export default { searchImg, searchPlace, searchAssociation }