Перейти к содержимому

Фото
- - - - -

Пару вопросов


  • Вы не можете создать новую тему
  • Please log in to reply
15 ответов в этой теме

#1 Ferzin

Ferzin
  • Постоялец
  • 1 967 сообщений

Отправлено 10 декабря 2009 - 20:54

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

Вопросы:

1. Скрипт соединяется с базой SQL. Это соединение будет устанавливаться каждый раз при выполнении скрипта или возможно сразу установить постоянное соединение с базой?
2. При создании оформлении сайта на выбор. Например темы расположены по папкам. Черт с ним, чтение из файлов тем организовать легко, но как сделать грамотное отображение всех элементов? Тему ведь можно написать по разному. Или просто сделать чтение по одному способу и под этот способ подстраивать все темы сайта?
3. Права на файлы(CHMOD). На картинки оно ясно, а на php, js файл какие права ставить чтобы его исходник не гопнули?
4. Быстродействие. В PHP есть вариант создать по переводу(я не знаю как это описать нормально) вот пример
adsection.php?i=2 (или подставить любую другую цифру которая будет передавать ид действия)
т.е идёт выбор действия.
В принципе можно всю CMS организовать в нескольких файлах, но не будет ли проигрыш в быстродействии отображения страниц и выпонении скриптов?
5. Есть ли выгода не использовать SQL-базы, а использовать чтение всей информации из файлов? Например Slaed CMS работает без баз, все записывает в свои файлы.
6. Помимо куки, есть ли способы по автоматической авторизации юзера на сайт?
7. Есть ли методы кодировки данных надежнее чем мд5?
8. Посоветуйте самоучители по программированию баз данных.

удовлетворите интерес :(
  • 0

#2 Equals

Equals
  • Пользователь
  • 76 сообщений

Отправлено 11 декабря 2009 - 10:30

Быстродействие. В PHP есть вариант создать по переводу(я не знаю как это описать нормально) вот пример
adsection.php?i=2 (или подставить любую другую цифру которая будет передавать ид действия)
т.е идёт выбор действия.


id=XXX - это прошлый век, современные ЦМС используют URL типа http://www.example.com/action/xxx/porn

Если у нас в фирме покупают ЦМС, то если передаётся по айди, то сразу шлём подальше.
  • 0

#3 XDMCoder

XDMCoder
  • Пользователь
  • 16 сообщений

Отправлено 11 декабря 2009 - 12:44

De_Toi, пользуйся фреймворками, половина вопросов отпадёт (Kohana).
Equals, знаком с htaccess? http://site/index.php?porn=teen тоже самое что и http://site/porn/teen или вообще http://site/teen
Сначала передаём всё обычным GET'ом, потом делаем ЧПУ.
  • 0

#4 Alexano

Alexano
  • Пользователь
  • 109 сообщений

Отправлено 11 декабря 2009 - 13:22

1. Начинающим не рекомендую использовать постоянное соединение. Подробнее написано на php.net/mysql_pconnect, php.net/mysql_connect
2. не понятно
3. 644, 755
4. переадресуй всё запросы через mod_revwrite на один единственный entry point которым в данном случае буд являться index.php, пиши router который будет решать какой контроллер подулючить в зависимости от url
5. Используй грамотно спроектированную бд, фаилы - это прошлый век, максимум - для хранения настроек.
6. Нет
7. MD5 + salt, никакая rainbow таблица не справится с этим. Не храни пароли пользователей в открытом виде в бд.
8. http://db.grussell.org/ - если всё прочитаешь и вникнешь то никаких проблем с проектированием бд никогда не будет возникать. Это общая теория баз данных.
  • 0

#5 Equals

Equals
  • Пользователь
  • 76 сообщений

Отправлено 11 декабря 2009 - 14:34

Equals, знаком с htaccess?

Знаком с mod_rewrite тогда уж.
  • 0

#6 Demetrio

Demetrio
  • Пользователь
  • 18 649 сообщений
  • Откуда:Tallinn

Отправлено 11 декабря 2009 - 14:35

не Апачем единым жив WEB.
  • 0

#7 Alexano

Alexano
  • Пользователь
  • 109 сообщений

Отправлено 11 декабря 2009 - 15:18

Demetrio, что верно, то верно, только новичку в других технологиях разобраться будет намного сложнее.
  • 0

#8 Ferzin

Ferzin
  • Постоялец
  • 1 967 сообщений

Отправлено 11 декабря 2009 - 17:07

Equals, почему прошлый век? Так как-то компактнее выходит и в чем не достаток?
Возможно и старый метод, просто я изучал по учебникам которые были написаны до 2005 года.

Кста, ещё не совсем умный вопрос. Возможно ли средствами WEB-программирования узнать Mac адрес компьютера пользователя.
Например в некоторых играх существует бан по Mac-адресу(ну и когда чужой вай фай взламываешь, юзаешь его, если попадётся продвинутый юзер он забанит тебя по адресу компьютера. админ панели рутеров сейчас это позволяют.)

2. не понятно

Не совсем ясно как организовают правильное чтение и отображение дизайна сайта из файлов. Просто весь сайт под один дизайн встроенный подгонять это как то серо.

7. MD5 + salt, никакая rainbow таблица не справится с этим. Не храни пароли пользователей в открытом виде в бд.

www.passcracking.ru расшифровывает, сложные пароли приходится отправлять на расшифровку. пару лет назад когда был мелким я с помощью этого сайта и моей мюсол-базы с юзерами сломал где-то 15 сайтов моих игровых конкурентов, но фтп доступа получить не смог правда.
  • 0

#9 Demetrio

Demetrio
  • Пользователь
  • 18 649 сообщений
  • Откуда:Tallinn

Отправлено 11 декабря 2009 - 21:36

De_Toi, мак-адрес можно видеть только в пределах локальной сети.
  • 0

#10 Ferzin

Ferzin
  • Постоялец
  • 1 967 сообщений

Отправлено 11 декабря 2009 - 22:04

De_Toi, мак-адрес можно видеть только в пределах локальной сети.

!
Дело было ночью. Я был в 40 км от города срочно приспичило залезть в интернет, проверить перевели зарплату или нет. Делать было нех, после пьянки все друзья разошлись, я решил сходить на станцию где есть халявный вай фай(5 км где то).
Взял ноутбук, пошёл. Пришёл на место, сел на лавку напротив станции с лаптопом. Полчаса посидел в инете, потом врубил торренты, дабы проверить какая скорость у вай-фай. И забыл их вырубить.
В окне которое через рельсы(в домике станции) мне начали мигать светом, типо пшёл нах отсюда(хехе владелец вай фай сразу пропалился). Потом эстонец вылез в окно и начал ругаться. Я не реагировал, были дела поважнее.

Через 5 минут, он отрубил меня от интернета и забанил в своём вай фай.
т.е я мог приконнектиться к его вай фай, но не мог серфить в инете. На следующий день поехал в город по делам и заодно разузнал на комп. форуме как он меня заблокировал. Мне ответили по Mac адресу. Нашёл программу Mac Changer. Теперь когда приходил на это место юзал прогу и мог спокойно лазить в инете через его вай фай.

Поэтому поинтересовался по поводу Mac-адреса. Ведь когда банишь кого то, большинсто даже не знает про куки, что если их удалить то можно вылезти частично из бана.(т.е видеть сайт где тебя забанили, но не сможешь залогиниться, если залогинишься форум снова отложит куки и ты не сможешь даже выйти оттуда не удалив куки)

Ну ладно, если 90% юзеров компьютера не знают чо такое куки, то много ли юзеров знают чо такое Mac-адрес? Я с рассчетом на то что банить так, чтоб бан было не обойти.

Страные эстонцы.. забанить могут, а запоролить свой вай фай не судьба.
  • 0

#11 ParadoxL

ParadoxL
  • Постоялец
  • 5 023 сообщений
  • Откуда:Edinburg

Отправлено 12 декабря 2009 - 14:02

PHP сакс ...
  • 0
Victoria nulla est, Quam quae confessos animo quoque subjugat hostes ...
Верю в смерть после жизни, любовь после секса и в крем после бритья ...

#12 Demetrio

Demetrio
  • Пользователь
  • 18 649 сообщений
  • Откуда:Tallinn

Отправлено 12 декабря 2009 - 14:25

De_Toi, забанить мак на своём рутере ты можешь. потому что ты его там видишь.
а на сайте - нет. он дотуда не доходит.
  • 0

#13 Alexano

Alexano
  • Пользователь
  • 109 сообщений

Отправлено 14 декабря 2009 - 10:11

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

тебе удалось это сделать потому что пароли хранились без соли
  • 0

#14 Ferzin

Ferzin
  • Постоялец
  • 1 967 сообщений

Отправлено 14 декабря 2009 - 19:28

Обьясните чо такое salt. :P
  • 0

#15 Alexano

Alexano
  • Пользователь
  • 109 сообщений

Отправлено 15 декабря 2009 - 11:06

salt это просто строка, состоять может из любого количества символов.

md5($pass.$salt) - используй при записи пароля в бд.
Храни salt отдельно в бд.
  • 0

#16 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

Отправлено 15 декабря 2009 - 14:19

md5

Лучше сменить на что-нибудь более криптостойкое)
  • 0

Вначале делаю, потом думаю :)