PHP - вывод случайного содержимого

PHP логотип
 
Иногда требуется выводить данные в случайном порядке. Кроме этого, вещь полезна еще и тем, что контент страниц никогда не повторяется и при индексации роботами мы всегда можем сказать, что страницы у нас разные, чем несколько вводим в заблуждение поисковики. Но это заблуждение в нашу пользу.

Реализовать это можно несколькими способами. Один из самых простых:

  1. Создать на сервере текстовый файл data.txt
  2. Наполнить этот файл содержимым (каждый новый вариант - с новой строки)
  3. Добавить на страницу следующий php-код:
<?php
$phrases = "data.txt"; //файл содержимого
$z = file ($phrases);
$cz = count ($z) -1;
$r = rand (0, $cz);
print $z[$r];
?>

Для примера, на этой странице будет генерироваться три афоризма:


Афоризм 1: Пока красота спасает мир, уроды его погубят.

Афоризм 2: Нес столько чуши, что не мог не надорваться.

Афоризм 3: И у суфлеров важная роль, но только под сценой.


Ничего сложного. Единственный ньюанс - необходимо, чтобы кодировка текстового файла совпадала с кодировкой веб-страницы.

 

BGP - как происходит выбор наилучшего маршрута

BGP всегда выбирает один из маршрутов - как наилучший. Когда маршрут выбран, BGP помещает его в свою таблицу маршрутизации, и передает его своим neighbor'ам. Для выбора наилучшего маршрута BGP использует следующие критерии:

1. Если путь, указанный в поле next-hop, недоступен, этот update убивается.

2. Лучшим считается путь с наибольшим значением weight;

3. Если weight путей одинаковы, то выбирается путь с наибольшим lpref;

4. Если weight и lpref одинаковы, то выбирается путь, который появился в таблице маршрутов BGP на данном роутере. (подразумевается, что это будет самый наикратчайший путь);

5. Если нет путей, которые "родились" на данном роутере, то выбирается путь с AS_path минимальной длины;

Добавлены переводы man-страниц

 

FreeBSDДобавлено значительное количество переводов на русский man-страниц. Рекомендую "пробежаться" по названиям, возможно что-то заинтересует. Сам обнаружил несколько полезных утилит, о которых не подозревал. Если есть чем поделиться - регистрируйтесь и добавляйте материал самостоятельно.

Просмотреть доступные переводы можно в разделе Русские man-ы

BGP - настраиваем Border Gateway Protocol c помощью Quagga

Вообще-то по настройке Quagga уже есть статья, но решил, что настройке BGP необходимо посвятить отдельную статью. Итак, на днях получила дружественная сеть свою автономную систему и блок адресов. Соответственно необходимо все это дело настроить под собственные нужды, и с этой просьбой и обратилась ко мне.

Для глобальной маршрутизации будем использовать протокол BGP, информацию можно получить здесь. Ознакомившись с литературой, приступим к настройке.

Поставленная задача: получить от провайдера по одному BGP-соединению список сетей UA-IX, по второму - Full-view. Ну а дальше уже можно будет по представленной схеме настраивать соединения с несколькими аплинками.

Ddrescue - поиск сбойных блоков на жестком диске

Возникла необходимость в поиске сбойных блоков на жеском диске. Порыскав по интернету, нашел описание утилиты ddrescue. Решил попробовать. Итак, устанавливаем утилиту из портов:

# cd /usr/ports/sysutils/ddrescue && make install clean && rehash

Проверка не составляет труда. Проверим, для примера, раздел /dev/ad5s1d:

# ddrescue --force /dev/ad5s1d /dev/null

Э. Таненбаум - Архитектура компьютера

Э. Таненбаум - Архитектура компьютера

Название: Архитектура компьютера

Автор: Э. Таненбаум

Год: 2007

ISBN: 5-469-01274-3, 0-13-148521-0

Страниц: 848

Формат книги: DJVU

Размер: 14.7 МБ

Протокол маршрутизации BGP (перевод на русский)

Протокол маршрутизации BGP (перевод на русский)

BGP (англ. Border Gateway Protocol, протокол граничного шлюза) — основной протокол динамической маршрутизации в Интернете.

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

Собственный счетчик посещений

В сети очень много сервисов предлагают установить свои счетчики посещений. Мы же в этот раз попробуем создать собственный счетчик посещений, который можно будет поместить на веб-страницу, своими силами.

Счетчик создаем с помощью PHP. Код счетчика очень простой:

<?php
$filename = "counter.dat";      // задаем переменную, указывая имя файла
if(file_exists($filename)){     // если файл присутструет, то
$fp = fopen($filename,"r");     // открываем соединение с этим файлом, причем только на чтение
if ($fp) {                      // проверяем, успешно ли открылось соединение.
$counter = fgets($fp,10);       // если успешно, считываем из открытого файла первые
                                // 10 символов в переменную счетчика
fclose($fp);                    // закрываем соединение
} else {                        // иначе
$counter = 0;                   // присваиваем переменной счетчика ноль
}
}
$counter++;                     // увеличиваем переменную счетчика на единицу
echo $counter;                  // выводим на экран переменную счетчика
$fp = @fopen($filename,"w");    // открываем соединение на запись с очисткой всего содержимого файла
if ($fp) {                      // если успешно, то...
$counter = fputs($fp,$counter); // записываем новое значение переменной счетчика в файл
fclose($fp);                    // закрываем файл
}
?>

Вот и все! Теперь можно устанавливать свои собственные счетчики на любых страницах сайта. Для этого указанный код вставляется в любое место нужной страницы. В этом месте будет выведено количество посещений.

ПРИМЕР: Вы пользователь, который посетил эту страницу.

UNIX. Программное окружение

UNIX. Программное окружение

Название: UNIX. Программное окружение

Автор: Брайан Керниган, Роб Пайк

Год издания: 2003

Страниц: 414

Формат: PDF

Размер: 2.79 МБ

Unix/Linux. Теория и практика программирования

Unix/Linux. Теория и практика программирования

Название: Unix/Linux. Теория и практика программирования

Автор: Брюс Моли

Год издания: 2004

Страниц: 576

Формат: DJVU

Размер: 20.3 МБ

RSS-материал

Вставай, Україно!

Литература