Во-первых, я считаю себя скорее программистом, чем сервером. У меня есть веб-сайт, на который я получаю около 3000 посещений в день, что, по моему мнению, намного меньше максимальной емкости выделенного сервера.
Однако я заметил, что соединение с сайтом довольно медленное, например, для загрузки изображений, подключения к нему через SSH и т. Д.
Недавно я настроил .httaccess, чтобы избежать ссылок на изображения на моем сервере (например, .jpg, .gif и .png), и мне было интересно, может ли это замедлить работу моего веб-сайта.
Это конфигурация, которая у меня есть:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.mysite.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.mysite.com$ [NC]
RewriteRule .*\.(jpg|jpeg|gif|png|bmp|swf)$ http://www.google.com/ [R,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Я нашел код для этого в Google и просто скопировал его в .htacces, так как я не эксперт в apache. Это работает, но я не знаю, лучший ли это способ сделать это.
Как узнать, почему сервер работает медленно? Есть ли какие-нибудь инструменты для этого? Что бы вы сделали, ребята?
Заранее спасибо!
.Htaccess замедляет работу моего сервера? Конечно, возможно, но может быть недостаточно, чтобы вам было наплевать. Если вы разрешаете файлам .htaccess переопределять конфигурацию сервера, Apache должен искать во всех каталогах в пути URL файл .htaccess (например, если вы обращаетесь к /foo/bar/baz/index.html, то Apache должен искать ... / foo / bar / baz / .htaccess, ... / foo / bar / .htaccess, ... / foo / .htaccess и ... /. htaccess, где "..." - это путь в ваш DocumentRoot). Для этого потребуется ограниченное количество времени, которого можно избежать, если вы поместите всю свою конфигурацию в файлы конфигурации сервера и установите AllowOverride None
.
Есть ли инструменты для мониторинга производительности сервера? Есть ряд инструментов, которые вы можете использовать для оценки производительности вашего сервера. Apache поставляется с ab
инструмент ("Apache Bench"); подробности см. на странице руководства. Еще одно популярное решение - Apache jmeter. Вы можете запустить тесты с отключенными и включенными файлами .htaccess и посмотреть, есть ли заметная разница.
Что бы вы сделали, ребята? Если бы у меня был контроль над сервером, я бы установил AllowOverride None
и поместите конфигурацию в соответствующий <Directory>
или <Location>
директива.