09.05.2007, 11:53 | #1 |
Специалист
Регистрация: 09.05.2007
Сообщений: 231
Вес репутации: 217
|
Вопрос по links.db
Будучи программистом, заинтересовался внутренностью links.db. Это, как оказалось, хеш-массив со ссылками, ключами которого являются адреса страниц моего сайта. Все логично.
Но вот какая штука меня поразила - в массиве зачем-то указаны адреса как со слешем на конце, так и без! То есть все ключи продублированы 2 раза, соответственно, и списки ссылок - тоже. Зачем??? Если хотелось застраховаться от разного задания адресов страниц - убрали бы программно из адреса финальный слеш, и все. Представляю, что будет с файлом links.db, когда ссылки будут стоять на 5000 страниц. Файлик будет мегабайт под 10, хотя мог бы иметь размер ровно в 2 раза меньше... И еще вопрос - когда этот файл уже создан, с директории, в которой он лежит, уже права на запись 777 можно снять, так? |
09.05.2007, 12:29 | #3 | |
Специалист
Регистрация: 09.05.2007
Сообщений: 231
Вес репутации: 217
|
Цитата:
|
|
09.05.2007, 12:38 | #4 |
Специалист
Регистрация: 09.05.2007
Сообщений: 231
Вес репутации: 217
|
Вот, строчка 178:
Код:
if (array_key_exists($this->_request_uri, $this->_links) && is_array($this->_links[$this->_request_uri])) { $this->_links_page = $this->_links[$this->_request_uri]; } Код:
// Какая страница? if (isset($options['request_uri']) && strlen($options['request_uri'])) { $this->_request_uri = $options['request_uri']; } else { $this->_request_uri = $_SERVER['REQUEST_URI']; } Код:
// убираем финальный слеш, если он есть $this->_request_uri = preg_replace('!/$!', '', $this->_request_uri); |
09.05.2007, 14:41 | #5 |
Специалист
Регистрация: 26.01.2007
Сообщений: 334
Вес репутации: 226
|
Сделано и сделано, че теперь вздыхать? Невооруженным взглядом видно, что писали все троешники, и это был их первый крупный проект.
1100 ссылок весят 270Кб, можно пережить. А менять код на 14000 сайтов - тот еще геморрой. |
09.05.2007, 19:41 | #6 |
Администратор
Регистрация: 05.02.2007
Сообщений: 18,405
Вес репутации: 715
|
Как только какомунибудь "программисту" придет в голову убрать финальные слеши система лишится половины оптимизатров. Мне напрмер он крайне нужен и важен. Я понимаю, что программер не должен понимать в оптимизации ничего.. он програмить должен.
Волнует размер сапе.дб? Удалите сайт изи системы!
__________________
Читаем ФАК |
09.05.2007, 21:20 | #7 | |
Специалист
Регистрация: 09.05.2007
Сообщений: 231
Вес репутации: 217
|
Цитата:
|
|
10.05.2007, 11:04 | #8 |
Администратор
Регистрация: 05.02.2007
Сообщений: 18,405
Вес репутации: 715
|
Код:
Я описал способ убрать их из файла links.db. Ссылка со слешом и ссылка без него - не идентичные ссылки. Давайте возьмем это за аксиому. Теперь в линкс дб половина с ним, половина - без. Выход - либо они там лежат как их положил О, либо в обоих вариантах... Если так как положил - то ладно. А если все к одному - то нафих.
__________________
Читаем ФАК |
10.05.2007, 15:34 | #9 | |
Специалист
Регистрация: 09.05.2007
Сообщений: 231
Вес репутации: 217
|
Цитата:
|
|
10.05.2007, 17:39 | #10 | ||
Администратор
Регистрация: 05.02.2007
Сообщений: 18,405
Вес репутации: 715
|
Цитата:
А зачем мне спрашивается ждать, пока яшка получив 301 сообразит, что надо оказывается на со слешом ходить?
__________________
Читаем ФАК |
||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
links.db | rmPIC30 | Вопросы от новичков | 29 | 08.07.2008 10:35 |
Adult links vs all others links | Renult | Вопросы от новичков | 4 | 23.05.2008 00:57 |
links.db | hostm | Ошибки при работе с системой | 4 | 18.04.2008 11:16 |
Вопрос по links.db | ortega3000 | Вопросы по работе системы | 11 | 16.03.2008 09:45 |
links.db | N@S | Вопросы по работе системы | 7 | 18.05.2007 08:22 |
Часовой пояс GMT +3, время: 02:23.