Сервер в кармане, или просто о сложном!

Удаление стандартных общих ресурсов C$, ADMIN$, IPC$

Обновлено: 07.04.2025

Большинсто людей, работающих в локальных сетях, даже не подозревают о том, что можно обратиться к их диску C: и посмотреть их личные документы. Большинство людей считают: раз я не ставил общий доступ к ресурсам на моем компьютере, то другие не смогут туда залезть. Как бы не так :). Достаточно вам ввести к командной строке ("Пуск -> Выполнить -> cmd")


Как создать голосование на PHP

Обновлено: 07.04.2025

Ниже приведена простая для понимания и реализации функция создания интернет-голосования на сайте.

Вызывается функция следующим образом:

 

<?php

// Создаем новую функцию С 3-мя параметрами:
// $name - название опроса;
// $variants - массив вариантов ответа;
// $dir - имя директории для файлов опроса (папка создается скриптом).

function voting($name, $variants, $dir){

GLOBAL $REQUEST_URI;

    // Если пользователь уже проголосовал
    if(isset($_POST['vote'])){

    // Массив ошибок
    $errors = array();

    // Массив содержимого директории

    $indir = array();
    $dh = opendir('./');
    while($file = readdir($dh)){
    if($file == '.' || $file == '..') continue;
    $indir[] = $file;
    }
    closedir($dh);

    // --------------------------------------------------------
    // Если у вас PHP5, вместо получения содержимого дериктории
    // вручную, вы можете воспльзоваться функцией scandir():
    // $indir = scandir('./');
    // --------------------------------------------------------


    // Если директория для файлов опроса отсутсвует,
    // Значит еще никто не голосовал, следовательно,
    // Нужно создать эту директорию и необходимые файлы,
    // Чтобы избежать ошибки


    if(in_array($dir, $indir) == FALSE){

    mkdir($dir, 0770);
    $cr1 = fopen($dir.'/base.txt', 'w');
    for($i=0; $i<sizeof($variants); $i++){
    fputs($cr1, '0');
    }
    fclose($cr1);
    $cr2 = fopen($dir.'/ip_list.txt', 'w');
    fclose($cr2);
    }

        // Понеслась... Проверяем, голосовал ли пользователь
        // Массив уже проголосовавших IP-адресов

        $ip_list = file($dir.'/ip_list.txt');


            // Если IP юзера совпал с одним из базы, значит юзер
            // Уже голосовал

            if(in_array($_SERVER['REMOTE_ADDR']." ", $ip_list) == TRUE){
            $errors[] = "Вы уже голосовали!";

        }else{

            $answers = file($dir."/base.txt");

            $fh = fopen($dir."/base.txt", "w");
            flock($fh, LOCK_EX);

            for($i=0; $i<sizeof($answers); $i++){
                // Удаляем переводы строк
                $answers[$i] = trim($answers[$i]);

                // Пишем
                if($i == $_POST['vote']){
                    fputs($fh, ($answers[$i]+1)." ");
                }else{
                    fputs($fh, $answers[$i]." ");
                }
            }

            flock($fh, LOCK_UN);
            fclose($fh);

        // Записываем IP юзера в базу проголосовавших

            $fb = fopen($dir."/ip_list.txt", "a+");
            fputs($fb, $_SERVER['REMOTE_ADDR']." ");
            fclose($fb);
            }

    if(isset($errors[0])){
        echo "Ваш голос не был учтен, т.к. были обнаружены следующие ошибки: <br>";
        for($i=0; $i<sizeof($errors); $i++) echo $errors[$i]."<br>";
    }else{

        echo "Ваш голос учтен! Результаты:<br>";

        // Обновляем базу
        $answers = file($dir."/base.txt");

        // Выводим результаты, и заодно считаем общее количество
        // Для этого складываем существующие голоса

        $summ = 0;
        for($i=0; $i<sizeof($answers); $i++){
        echo $variants[$i].": ".$answers[$i]."<br>";

        // Пересчет голосов
        $summ += $answers[$i];
        }

        // Вывод общего количества голосов
        echo "Всего: ".$summ;

    }

    }else{

        echo "<b>".$name."</b><br>";

        echo "<form action=./ method=POST>";

        for($i=0; $i<sizeof($variants); $i++){
            echo "<input type=radio name=vote value=".$i;
            if($i==0) echo " checked";
            echo ">".$variants[$i]."<br>";
        }
        echo "<input type=submit value=Голосовать>";
        echo "</form>";

    }
}
?>

Вызывается функция следующим образом:

 

<?php
voting("Выбираем самый популярный антивирус", Array("Kaspersky", "Eset NOD32", "Symantec", "DrWeb", "McAfee"), "vote2");
?>

Ну вот и все.

Автор: Mostom, http://cngroup.ru/

Настройка сервера: Службы и сетевые порты в серверных системах Microsoft Windows. Часть 2

Обновлено: 13.09.2025

Продолжение статьи: Настройка сервера: Службы и сетевые порты в серверных системах Microsoft Windows. Часть 1


Настройка сервера: Службы и сетевые порты в серверных системах Microsoft Windows. Часть 1

Обновлено: 13.09.2025
В данной статье рассмотрены основные сетевые порты, протоколы и службы, которые используются клиентскими и серверными операционными системами Майкрософт, серверными программами и их компонентами в серверных системах Microsoft Windows. Представленные сведения предназначены для помощи администраторам и специалистам службы поддержки при определении портов и протоколов, необходимых приложениям и операционным системам Майкрософт для функционирования в сегментированной сети.

Содержащиеся в этой статье сведения о портах не следует применять при настройке брандмауэра Windows. Сведения о настройке брандмауэра Windows см. в техническом справочнике параметров брандмауэра Windows (Windows Firewall Settings Technical Reference).

Серверная система Windows располагает интегрированной комплексной инфраструктурой, которая предназначена для удовлетворения потребностей разработчиков программного обеспечения и специалистов в области информационных технологий. Запущенные в такой системе программы и решения позволяют сотрудникам быстро, без дополнительных осложнений получать, анализировать и совместно использовать информацию. Серверы, клиентские компьютеры и серверные приложения Майкрософт используют большое количество сетевых портов и протоколов для обмена данными по сети с клиентскими компьютерами и другими серверными системами. Выделенные брандмауэры, брандмауэры в составе узла, а также фильтры безопасности протокола Интернета (IPSec) служат для обеспечения безопасности сети, но, с другой стороны, если с их помощью блокируются порты и протоколы, которые используются определенным сервером, то сервер не сможет отвечать на запросы клиентских компьютеров.



Принимаю заказы на настройку серверов, mikrotik и других роутеров, точек доступа, nginx и т.п. В пределах Санкт-Петербурга возможен выезд к заказчику. См. контакты.


Последние комментарии