1. VeNick - 17 Декабря, 2014 - 06:47:12 - перейти к сообщению
Всем доброго времени суток, столкнулся с проблемой. Существует проект, при нажатии по ссылку, проводятся обычные проверки if(..) else ... . Пользователи обнаружили что при очень быстром нажатии по ссылки(30-40 кликов в секунду), страница может подлагать, и как я понел, код загружается не полностью ибо нагло игнорирует проверки. Можно ли как то организовать защиту что бы пользователь не мог нажимать чаще чем 3-4 клика в секунду(JS, PHP, настройка nginx/apache). Заранее благодарю
2. DeepVarvar - 17 Декабря, 2014 - 07:25:16 - перейти к сообщению
3. RickMan - 17 Декабря, 2014 - 09:14:20 - перейти к сообщению
Не стройте глупых предположений. PHP это не человек, и если его нагрузить, он не начнет игнорировать основополагающие правила, материться или вообще пойдет выпьет Настройте правильно nginx и php и будет вам счастье.
4. VeNick - 17 Декабря, 2014 - 09:22:55 - перейти к сообщению
да вот пытаюсь как бы настроить nginx) вроде сделал все верно, но все равно человек с мышкой где двойной щелчок кнопочка есть, игнорит все в подряд. Что я мог тут сделать не так?
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- http {
- include /etc/nginx/mime.types;
- sendfile on;
- #tcp_nopush on;
- #keepalive_timeout 0;
- keepalive_timeout 65;
- tcp_nodelay on;
- gzip on;
- gzip_disable "MSIE [1-6]\.(?!.*SV1)";
- include /etc/nginx/conf.d/*.conf;
- include /etc/nginx/sites-enabled/*;
- include /usr/local/ispmgr/etc/nginx.domain;
- client_max_body_size 16M;
- log_format isp '$bytes_sent $request_length';
- limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
- server {
- server_name m-ages.com.ua www.m-ages.com.ua;
- listen 91.223.180.105;
- set $root_path /var/www/mages/data/www/m-ages.com.ua;
- location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
- root $root_path;
- access_log /var/www/nginx-logs/mages isp;
- access_log /var/www/httpd-logs/m-ages.com.ua.access.log ;
- error_page 404 = @fallback;
- }
- location / {
- proxy_pass http://91.223.180.105:81;
- proxy_redirect http://91.223.180.105:81/ /;
- proxy_set_header Host $host;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Proto $scheme;
- proxy_set_header X-Real-IP $remote_addr;
- }
- location /search/ {
- limit_req zone=one burst=5;
- }
- ...
файл конфига правил из /etc/nginx/nginx.conf
Сделал вывод секунд при нажатиях, человек показал:
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(40)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(38)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(36)
SPAYN23ru пытался нанести урон врагу, но корни энта admin остановили атаку(36)
Проверка в php вообще должна адресовать на форму ввода а исполняемый код не проводится