Защита паролем и файловые включения с PHP

Во-первых, если вы читаете статьи на прошлой неделе мною (1 о сайте персонализации в PHP), у меня одна того, чтобы сделать вашу жизнь немного легче. Если вы не читали статью на прошлой неделе, читайте. Это вам поможет. Вы можете найти здесь: utorials / 1


Теперь вспомните, как мы персональную страницу для ваших посетителей? Это работы хорошо, но мы делаем если они не используют специальную ссылку, что и просто пошла к странице?

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

Все, что нам нужно сделать, чтобы исправить это, чтобы сказать, что PHP, если они не оставить имя, заменить в 1 для них. Итак, давайте говорить, что если они покинули свои имя пустым, чтобы внести свое имя "Друг". Таким образом, вместо того чтобы сказать "Дорогой Оскар:" было бы сказать: "Дорогой друг:".

Вставьте следующие строки кода непосредственно над строкой в которой написано что-то подобное: эхо "$ F $ L":

если ($ F u003du003d "") ($ F u003d "Друг";)

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

Защита паролем что-то нужно каждый раз в то время. Будь то секретный объект вы работаете или просто на панели управления любимого сценария.

Иногда не нужно решение, как фантазия. Htaccess если вы только беспокоясь об одном (пользователь). Но JavaScript пароли можно обойти, а также HTML-основанные паролей на основе печенье, написанная в PHP являются сложными, и потребуется время, чтобы писать. Htaccess это прекрасно, но это боль, если вы просто хотите использовать его для одного человека.

Вот простой способ использования HTTP аутентификации (то же самое вы видите используется Htaccess) с помощью нескольких строк кода. Ниже приводится пример содержимого файла вы можете использовать.



мой основной текст.

На прошлой неделе мы узнали, что PHP код может быть интегрирован в Ваш HTML. Все, что вам нужно сделать, это убедиться, что файл с расширением. PHP (например, "firehydrant.php"), и он будет работать. Все, что происходит между ними следующим образом:



Трактуется как код PHP. Все, за пределами этих тегов рассматривается как обычный HTML.

При копировании этот код более, не забудьте включить, что последняя строка, где он говорит: "мой основной текст". Обратите внимание, что "мой основной текст" находится за пределами скобок PHP-код. Это означает, что если вы видите "Мой основной текст" может быть обычный файл HTML!

Возьмите весь этот код и загрузить скрипт на вашем веб-сервере и запустить его в браузере. Вы должны быть встречено всплывающем окне пароль аналогичные тем, которые вы видите с Htaccess. Enter "myusername" в качестве имени пользователя и "MyPassword" в качестве пароля. Вы должны получить страницу с надписью "мой основной текст" и больше ничего.

Закройте окно браузера (это очень важно), и, вернувшись на эту страницу. Попробуйте ввести неправильный информации. Ящик придет снова. У вас есть три попытки, а затем даны, что "страшное" Требуется авторизация "сообщение.

Если вы хотите, чтобы сделать следующий шаг, вернуться к коду и преобразований "myusername" и "MyPassword" для имени пользователя и пароля по вашему выбору. Загрузите его на ваш веб-сервер и попробуйте еще раз. Теперь перейдите на страницу, и вы снова увидите, что может быть только впустить, используя имя пользователя и пароль, которые вы выбрали для себя.

Теперь изменить часть, которая говорит: "Мой охраняемых территорий", чтобы что-то, сказать: "Джон Колдера Бар и Гриль". Загрузить и попробовать его. Вы увидите, когда это поле пароля появляется в разделе "Realm" он скажет: "Джон Колдера Бар и Гриль". Вы можете изменить это все что угодно.

Но что если вы хотите защитить паролем лишь несколько файлов? Есть ли у вас скопировать и вставить этот код на PHP скрипт после сценарий PHP?

Черт, нет!

Возьмите код, который вы только что изменение и принять последнюю строчку из нее. Вы знаете, что одна сказала: "Мой основной текст." Все, что вы должны иметь там сейчас все между PHP скобках ().

Сохраните этот файл как "auth.php". Вы можете переименовать его позже, на вашем собственном времени.

Создать новый файл с названием "test.php" или просто переименовать один из обычной HTML на это имя. Это не имеет значения. На самом верху test.php (на самом верху, то есть первая линия) скопировать и вставить эту строку кода:



Добавить auth.php и test.php к веб-серверу и выполните test.php. Убедитесь, что оба файла находятся в одной папке. Теперь попробуйте поехать в test.php в веб-браузере. Вы увидите, что вы не можете добраться до test.php без права имя пользователя и пароль. Вы можете сделать это в любой файл с ". PHP" расширение, просто добавив, что одной строки кода.

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

Конечно, это не заботиться о ваших секретных объектов или частных членов районах, где вам приходится иметь дело с несколькими логинами, но вот что Htaccess для.

Хотя мы по вопросу включает 1 Последнее, что, прежде чем мы закончим.

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

Создать новый файл с названием "header.html". Положим, что вы хотите в нем, но я просто положил "Это мой заголовок
"Когда я это сделал.

Сделать второй файл под названием "footer.html". Опять же, и опять положить все, что вы хотите в нем, но я просто положил "Это мой колонтитул
"Дюйма

Сделать третий файл "main.php". Скопировать в него следующее.



Это моя главная страница




Загрузить все три в одну папку и запустите main.php. Вы должны увидеть следующее:

Это мой заголовок
Это моя главная страница
Это моя колонтитул

Это лишь самый простой пример того, как включает в себя могут быть использованы. Но если у вас есть веб-сайт с несколькими страницами и тот же макет ... не было бы легче сразу поставить все над основным текстом header.html и все ниже, чем основной текст в footer.html? Таким образом, если вы измените дизайн у вас есть только для редактирования 2 файлов, а не 100 или 200?

Вы думаете.


18 Февраля 2010, 12:02
Отзывы
Написать комментарий
capcha
Написать