Blog.Lysov.ru
msgbartop
My own blog
msgbarbottom

28 Apr 10 Поддомены в папки

Для раскидывания поддоменов по папкам можно использовать такую конструкцию

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} admin.domain.ru$
RewriteCond %{REQUEST_URI} !/admin/
RewriteRule ^(.*)$ /admin/$1 [L]
RewriteRule admin - [L]

Tags: , , , ,

16 Mar 09 Доступ по ip или паролю в .htaccess

Чтобы открыть сайт для локалки но запаролить для внешки я использую такую конструкцию

AuthType Basic
AuthName "Test hosting"
AuthUserFile /web/admin/www/.htpass
Require valid-user
Order deny,allow
Deny From All
Allow From 192.168.0.
Satisfy any

Tags: , , , , ,

17 Jul 08 Заглушка по ипу домену

RewriteCond %{HTTP_HOST} ^(www\.)?(example.com)$ [NC]
RewriteCond %{REMOTE_ADDR} !(10\.10\.10\.10) [NC]
RewriteRule ^(^[^.]*)$ /index1.html [L]

Tags: ,

27 Feb 08 Косяк с url fopen

Работал работал хостинг рос и ширился, и в один прекрасный день перестали работать все операции связанные с вызовом gethostaddr.

Один и тот же скрипт запущенный в режиме cli выполняется, а как модуль
apache не хочет определять имена хостов.
Помогает добавление в /etc/hosts необходимых url-ов.

Включил debug режим error лога, а там

host: isc_socket_create: not enough free resources

Это говорит о том что апач превысил лимит открытых файлов :(

lsof | grep -c httpd
12790

а при этом в

sysctl -a | grep kern.maxfiles
kern.maxfiles: 12328
kern.maxfilesperproc: 11095

Вот собственно и проблема, решить которую можно двумя способами
1. Уменьшить количество открытых файлов
2. Увеличить лимиты

Я уменьшил количество, путем удаления лишних логов (было по 4 на хост стало по 2)
тем самым отсрочив немного эту проблему.

lsof | grep -c httpd
7244

Tags: , , , ,

05 Feb 08 Сжатие gzip через mod_deflate

<IfModule deflate_module>

SetOutputFilter DEFLATE

# исключаем Netscape 4.x, Netscape 4.06-4.08,
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE маскирующийся под Netscape включаем
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# для прокси отключаем сжатие
Header append Vary User-Agent env=!dont-vary

# исключаемые типы файлов
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ico|swf|exe|t?gz|zip|bz2|sit|rar|7z|pdf)$ \
no-gzip dont-vary
</IfModule>

Tags: , ,

21 Jan 08 Настройка mod_ssl Apache2.2

mkdir  /etc/mail/certs/
 
openssl req -new -newkey rsa:1024 -nodes -keyout /etc/mail/certs/server.key -x509 -days 5000 -subj "/C=XX/CN=имя-хоста/emailAddress=root@имя-хоста" -out /etc/mail/certs/server.crt
 
cp /etc/mail/certs/server.crt /etc/mail/certs/cacert.pem
chmod 400 /etc/mail/certs/server.key

Далее правим /usr/local/etc/apache22/extra/httpd-ssl.conf

ServerName www.example.com:443
ServerAdmin info@example.com
 
SSLCertificateFile /etc/mail/certs/server.crt
 
SSLCertificateKeyFile /etc/mail/certs/server.key

Tags: ,

12 Jan 08 apache2.2 suexec

cd /usr/ports/www/apache22

make WITH_SUEXEC_MODULES=yes SUEXEC_DOCROOT=/

Tags: , , ,