Вопрос-ответ по PHP дорвей-кодингу

sidorka
На сайте с 17.08.2012
Offline
211
#71

А как шифрануться, чтобы бот подумал,что тут вообще сервака нет никакого? Т.е. даже заголовки не давать. Бот пришел, понюхал испорченный воздух и убрался восвояси.

Дешевые домены для дорвеев и не только - от 55р (https://goo.gl/Wtnwqp)
D3
На сайте с 08.02.2009
Offline
55
#72
sidorka:
А как шифрануться, чтобы бот подумал,что тут вообще сервака нет никакого? Т.е. даже заголовки не давать. Бот пришел, понюхал испорченный воздух и убрался восвояси.

то есть чтобы сервер открыл сокет, считал что юагент и в случае бота просто закрыл сокет.

вот чес хз как такое апачем реализовать, либо очнь внимательно курить маны, либо патч вэбсервера. может как-то IPTABLESом реализовать - завернуть трафик в сишный парсер юагентов и в случае бота отдавать фалс чтобы таблес закрывал коннект.

sidorka
На сайте с 17.08.2012
Offline
211
#73
DEM333:
то есть чтобы сервер открыл сокет, считал что юагент и в случае бота просто закрыл сокет.

именно это. я такое не потяну, как описано. а на пхп такое как реализовать?

D3
На сайте с 08.02.2009
Offline
55
#74
sidorka:
на пхп такое как реализовать?

на пыхе просто в массиве сервер проверять юзерагент, чекать его регуляркой или стристром (stristr) и в случае бота 404 или 0 или клоаку.

sidorka
На сайте с 17.08.2012
Offline
211
#75
DEM333:
404 или 0 или клоаку.

Не, не то. Ни 404, ни 0 - как прикинуться мертвым? Вообще ничего не отдать, даже заголовки.

D3
На сайте с 08.02.2009
Offline
55
#76

exit(); или die();

sidorka
На сайте с 17.08.2012
Offline
211
#77

Не, не то.

это ответ сервера на die()

root@myfirstvps:/var/www# curl -gv http://[2a02:4780:1:1::1:9b4]/die.php
* About to connect() to 2a02:4780:1:1::1:9b4 port 80 (#0)
* Trying 2a02:4780:1:1::1:9b4...
* connected
* Connected to 2a02:4780:1:1::1:9b4 (2a02:4780:1:1::1:9b4) port 80 (#0)
> GET /die.php HTTP/1.1
> User-Agent: curl/7.26.0
> Host: [2a02:4780:1:1::1:9b4]
> Accept: */*
>
* additional stuff not fine transfer.c:1037: 0 0
* HTTP 1.1 or later with persistent connection, pipelining supported
< HTTP/1.1 200 OK
< Date: Fri, 22 Nov 2013 23:27:18 GMT
< Server: Apache/2.2.22 (Debian)
< X-Powered-By: PHP/5.4.4-14+deb7u5
< Vary: Accept-Encoding
< Content-Length: 0
< Content-Type: text/html
<
* Connection #0 to host 2a02:4780:1:1::1:9b4 left intact
* Closing connection #0

это на exit()

root@myfirstvps:/var/www# curl -gv http://[2a02:4780:1:1::1:9b4]/exit.php
* About to connect() to 2a02:4780:1:1::1:9b4 port 80 (#0)
* Trying 2a02:4780:1:1::1:9b4...
* connected
* Connected to 2a02:4780:1:1::1:9b4 (2a02:4780:1:1::1:9b4) port 80 (#0)
> GET /exit.php HTTP/1.1
> User-Agent: curl/7.26.0
> Host: [2a02:4780:1:1::1:9b4]
> Accept: */*
>
* HTTP 1.1 or later with persistent connection, pipelining supported
< HTTP/1.1 200 OK
< Date: Fri, 22 Nov 2013 23:29:14 GMT
< Server: Apache/2.2.22 (Debian)
< X-Powered-By: PHP/5.4.4-14+deb7u5
< Vary: Accept-Encoding
< Content-Length: 0
< Content-Type: text/html
<
* Connection #0 to host 2a02:4780:1:1::1:9b4 left intact
* Closing connection #0



---------- Добавлено 23.11.2013 в 03:31 ----------

т.е. отдает 200

D3
На сайте с 08.02.2009
Offline
55
#78

sidorka, да, все верно, хидер ответа формирует сервер, а php под сервером крутится - значит насиловать апач. ну или таблесом с заворотом на сторонний фильтр на сях.

HM
На сайте с 14.01.2012
Offline
253
#79

sidorka, юзать апач как фронтенд для доров не очень разумно, если идет речь об экономии ресурсов.

в соседнем треде ответил, но повторюсь тут:

http://nginx.org/ru/docs/http/ngx_http_rewrite_module.html#return

Нестандартный код 444 закрывает соединение без передачи заголовка ответа.
sidorka
На сайте с 17.08.2012
Offline
211
#80

Можно ли на уровне сервера при проксировании через моды менять содержимое ответа - дописать что-нибудь или удалить?

Киньте ссылкой.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий