[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Курсы PHP. Урок №2 от IRBIS-team
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
7ion
Цитата
php_flag expose_php off

, что бы заголовок нас не выдал.

Эээ, а можно поконкретнее? Что делает эта строчка, убивает посыл хедеров?

И, http://site.ru/blabla.php пойдет к серверу c $_GET['route'] и откроется дефолт (новости), а http://site.ru/config.php выдаст хакеру 404. Думаю, он поймет, что 404 - не настоящее, не так ли?
AmberLEX
Цитата
Цитата
php_flag expose_php off


, что бы заголовок нас не выдал.
Эээ, а можно поконкретнее? Что делает эта строчка, убивает посыл хедеров?

Вот здесь есть: http://www.php.ru/manual/ini.core.html
Как я понял его только в php.ini менять нужно (а это уже вопрос к хостеру), в .htaccess это эффекта не дает.

twin, кажись, эту строчку уже убрал из .htaccess

expose_php boolean- Определяет, разрешено ли PHP выдавать факт своего присутствия на сервере (например, добавляя свою подпись в заголовок веб-сервера). Ни в коей мере это не является угрозой безопасности, но это даёт возможность определить, используете ли вы PHP на своём сервере.

Т.е. если он включен, то в заголовке ответа будут присутствовать строки типа (упоминается присутствие php):

Date: Sun, 03 Jan 2010 10:49:44 GMT
Server: Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d PHP/5.2.4
X-Powered-By: PHP/5.2.4
Content-Length: 337
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive
Content-Type: text/html; charset=windows-1251

404 Not Found

А если выключен, то типа:

Date: Sun, 03 Jan 2010 10:51:48 GMT
Server: Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d
Content-Length: 337
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive
Content-Type: text/html; charset=windows-1251

404 Not Found

_____________
1. Чудес не бывает.
2. Дерьмо случается.
7ion
Ну, в этом уроке она осталась... Убирать, значит?
Lenarfate
а у меня почему-то вот так:

Array ( [route] => 10/5/7/3 )
Array ( [mod] => 10/5/7/3 [rem] => [id] => [page] => )
twin
Посмотри внимательно .htaccess там что то напутано у тебя.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Lenarfate
а может быть дело в том,что я не подключил дебаггер к индексу???
Lenarfate
а все разобрался)проклятую скобку случайно не туда пославил)
AmberLEX
Вот: в файле variables.php сторка
$get = explode('/', trim($_GET['route'], '/'));

Последний параметр:
Необязательный параметр limit указывает максимальное количество элементов в массиве. Оставшаяся неразделенная часть будет содержаться в последнем элементе.
Почему у нас '/' - ? Он вроде целым числом должен быть.
И я ставил 1 и 2 и 3 - не знаю, все равно все элементы присутствуют почему-то, нет там оставшейся части в последнем элементе.
Может его вообще убрать? Он вроде роли никакой не играет.


_____________
1. Чудес не бывает.
2. Дерьмо случается.
twin
Ты скобками просчитался. smile.gif

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
AmberLEX
Да, тупанул smile.gif Я уже понял.

_____________
1. Чудес не бывает.
2. Дерьмо случается.
qpayct
познавательно пишете.
мой .htaccess выглидит проще, но по сути делает тоже самое:
Options -Indexes
<Files "*.php">
Order Allow,Deny
Deny from All
</Files>
<Files
"index.php">
Order Allow,Deny
Allow from All
</Files>
ErrorDocument 400 /error/400.html
ErrorDocument 401 /error/401.html
ErrorDocument 403 /error/403.html
ErrorDocument 404 /error/404.html
ErrorDocument 500 /error/500.html
разве этого не достаточно, чтоб спокойно чпать? rolleyes.gif
twin
А причем тут спокойный сон smile.gif Там совсем другие цели преследовались.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
qpayct
значит я чего то недопонял. почитаю ешо
7ion

    define('IRB_HOST', 'http://'. $_SERVER['HTTP_HOST'] .'/');

А что если наш скрипт поставят не в корень сайта? А в какую-нибудь подпапку?
Нее, надо тогда тут делать константой абсолютный путь. А не только адрес сайта.
А в идеале что-то типа

define('IRB_HOST', 'http://'. $_SERVER['HTTP_HOST'] .'/');
define('IRB_PATH', 'http://'. $_SERVER['HTTP_HOST'] .'/'.$path); //кстати, как узнать-то папку?
// некая абстрактная функция in_root() определяет в корне наш скрипт или в подпапке, возможно она просто проверит empty($path), тогда по сути можно засунуть это прямо в условие

if (in_root()) define('IRB_MAINPATH', 'IRB_HOST');
else define('IRB_MAINPATH', 'IRB_PATH');


Вот хотелось бы тогда что-то типа этого, но я не знаю, как найти папку скрипта. Можно конечно поизвращаться и регуляркой отрезать путь от $ _SERVER [ 'PHP_SELF'], но может есть какая константа или переменная, хранящая его? rolleyes.gif
7ion
Эм... Блин, я только допер, что массивы $get и $GET - разные, а то понять не мог, сидел, думал - как оно работает.
Может их по другому назвать? Да и одно и тоже название, различающееся только регистром - очень плохой тон, да и если в настройках будет включена нечувствительность к регистру - то будет ой.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.