Тэг ‘htaccess’

Apache, htaccess и настройки PHP (php_value и php_flag)

Правильная (точнее, желаемая) работа PHP интерпертатора зависит от правильной конфигурации. Конфигурационные настройки PHP или директивы php.ini (php_value или php_flag) можно задавать несколькими способами:

  • в файле php.ini (скорее всего, если у Вас не выделенный сервер, то туда Вас не пустят. Хотя, некоторые хостинги предоставляют возможность создать собственный php.ini. Можно уточнить у хостинг-провайдера… Но в любом случае переживать пока рано, ведь это только первый способ;
  • если PHP используется как модуль Apache (или другого веб-сервера), то можно прописать настройки в файле httpd.conf (файл настроек веб-сервера, к которому пользователя простого хостинга тоже навряд ли допустят);
  • в файле .htaccess (в очередной раз речь про web-сервер, к примеру, Apache) - в последнее время обработка этого файла считается нормой для хостинга. И собственные настройки PHP, как правило, устанавливаются в этих файлах;
  • непосредственно в скриптах php с использованием функции ini_set().

Мы рассмотрели все возможные способы задания конфигурационных настроек интерпретатора PHP (Да, если кто знает другие варианты - сообщите.)

Есть еще маленькое “но”. Не все переменные php_value разрешено изменять в файле .htaccess (в зависимости от настроек сервера, изменение конфигурации PHP пользователем вообще может быть запрещено)

Некоторые настройки (:

php_value register_globals on
php_flag session.use_trans_sid off
php_flag session.use_only_cookies on
php_value max_execution_time 60
php_value upload_max_filesize 8M
php_flag display_errors off
php_flag log_errors on
php_value error_reporting 2047
php_value error_log log-file.txt

UPD шпаргалка по разрешениям изменений настроек PHP:
PHP_INI_USER = 1 значение может быть установлено в пользовательских скриптах
PHP_INI_PERDIR = 2 значение может быть установлено в php.ini, .htaccess или httpd.conf
PHP_INI_SYSTEM = 4 значение может быть установлено в php.ini или httpd.conf
PHP_INI_ALL = 7 значение может быть установлено где угодно

Ищем ошибки в PHP-скриптах (белый экран)
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

Опубликовано Июнь 27, 2009 | автор: levik  |  Комментарий (1) »

htaccess или конфигурируем веб-сервер Apache

.htaccess - служебный файл веб-сервера Apache (и не только), в котором можно указать дополнительные настройки для отдельного сайта или каталога.

Краткая шпаргалка по настройкам в htaccess:
(настройки php в .htaccess - php_flag и php_value в отдельной статье)

# Кодировка страниц по умолчанию
AddDefaultCharset utf-8

ErrorDocument *собственные страницы ошибок
ErrorDocument 404 /404.htm

#
Options +FollowSymlinks

# запрет выдачи списка файлов при отсутствии индексного файла
Options -Indexes

# запрещаем выводить в списке файлов файлы по маске
Options Indexes
IndexIgnore *.php* *.pl

#разрешаем запуск CGI
Options +ExecCGI

# индексный файл по умолчанию - DirectoryIndex указывается для каталога в котором расположен htaccess и всех нижележащих
DirectoryIndex index.html index.shtml index.pl index.cgi index.php

Запрет доступа к файлам - Deny, Allow

# Запрещаем доступ для всех
Order Deny,Allow
Deny from all
# или запрещаем для всех, кроме “избранных”
Order Deny,Allow
Deny from all
Allow from local.
Allow from 97.23.41.14, 97.23.41.15

#запрещаем просматривать изображения всем, кроме пользователя с IP-адреса
#синтаксис регулярных выражений
<FilesMatch “\.(gif|jpe?g|png)$”>
Order Deny,Allow
Deny from all
Allow from  97.23.41.15
</FilesMatch>

Авторизация пользователя средствами htaccess

AuthName “Control Panel”
AuthType Basic
AuthUserFile /home/www/users/levik/secure/.htpasswd
require valid-user

полный путь к файлу можно определить, выполнив в PHP скрипте команду echo __FILE__;

Считаете нужным добавить? Отпишитесь в комментариях.

Опубликовано Ноябрь 20, 2008 | автор: levik  |  Нет комментариев »

mod_rewrite Примеры

При помощи mod_rewrite можно обрабатывать те или иные адреса. Возможности модуля достаточно велики - ведь используются регулярные выражения. Однако, “типовых” задач не так уж много. Итак… сборник “шпаргалок” по mod_rewrite для начинающих.

Опубликовано Октябрь 5, 2007 | автор: levik  |  Комментарии (6) »