Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Использование .htaccess mod_rewrite

В новой версии форума 3.3.1 в АЦ указано, что при использовании .htaccess mod_rewrite необходимо создать .htaccess в корневой директории форума со следующим содержимым:

<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} .*\.(jpeg|jpg|gif|png)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /public/404.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Подскажите, является ли данное содержимое правильным? Я в коде не разбираюсь, просто смущает что RewriteCond %{REQUEST_FILENAME} !-f указано 2 раза.

 

В ранних версиях был такой код:

<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Изменено пользователем GluK

Рекомендованные сообщения

Разделение на два правила сделано с целью снижения нагрузки на скрипты. Теперь если не найдена именно картинка - "(jpeg|jpg|gif|png)" - ошибка обрабатывается отдельным скриптом, в котором PHP-кода всего одна строчка:

<?php header("HTTP/1.1 404 Not Found"); ?>
<html>
<head><title>404 - IP.Board - Bulletin Board System</title></head>
<body>
<h1>404: Not found</h1>
<hr>
The file you requested could not be found
<hr>
<a href="http://www.invisionpower.com">IP.Board</a>
</body>
</html>

 

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

 

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

 

Это очень полезная оптимизация.

  • 1 месяц спустя...

Добрый день! Работал на форуме mod_rewrite с вот таким содержимым .htaccess:

AddDefaultCharset utf-8
<IfModule mod_rewrite.c>

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !\..+$
RewriteRule . /index.php? [L]
</IfModule>

 

C недавнего времени все ссылки перестали работать, выдавая Not Found..

Если выключить mod_rewrite в админке - все ссылки заработают, только уже с index.php..

 

Подскажите пожалуйста куда копать?

Проблема решилась, банально не было точки перед htaccess :)

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.