Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: не работает mod_rewrite в apache  (Прочитано 24000 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ilimer

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
не работает mod_rewrite в apache
« : 30 Ноября 2007, 01:01:39 »
ubuntu Gutsy+apache2+php5; не работает mod_rewrite в apache, на все попытки написать что-либо похожее на:
RewriteEngine On
RewriteBase /
RewriteRule ^oldstuff\.html$ newstuff.html

 в .htaccess, ругается 500 err, подскажите в чём может быть дело?

Оффлайн ritov

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #1 : 10 Декабря 2007, 23:42:03 »
Включаем  mod_rewrite:

sudo a2enmod rewrite

он создает симлинк в папке mods-enabled
в принципе, можно вместо вышеприведенного короткого кода написать и длинный:

ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/
После этого нужно в виртуальном хосте для твоего сайта (лежит в /etc/apache2/sites-available) написать:

<VirtualHost *>
        RewriteEngine On
</VirtualHost>

После этого перезагрузить апач:

sudo /etc/init.d/apache2 reload
Но после этого у меня НЕ РАБОТАЕТ почему то!

Помогите!
« Последнее редактирование: 11 Декабря 2007, 15:47:20 от ritov »

Оффлайн svm

  • Активист
  • *
  • Сообщений: 372
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #2 : 12 Декабря 2007, 08:14:46 »
У мну тоже  не заработал этот модуль:

даю команду:
Цитировать
sudo /etc/init.d/apache2 restart

выдает:
* Restarting web server apache2
* We failed to correctly shutdown apache, so we're now killing all running apache processes. This is almost certainly suboptimal, so please make sure your system is working as you'd expect now!
apache2: Syntax error on line 183 of /etc/apache2/apache2.conf:
Syntax error on line 1 of /etc/apache2/mods-enabled/rewrite.load:
Cannot load /usr/lib/apache2/modules/mod_rewrite.so into server: /usr/lib/apache2/modules/mod_rewrite.so: invalid ELF header
                                                                         [fail]

делал все как тут - http://attic.krampo.info/2006/01/31/howto-enable-mod_rewrite-apache2-ubuntu/
как бы это дело поправить?
« Последнее редактирование: 12 Декабря 2007, 08:41:14 от svm »

Оффлайн ilimer

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #3 : 13 Декабря 2007, 04:41:31 »
у меня заработало.
тупо скопировал rewrite.load из mods-available в  mods-enabled. Перегрузил сервак и всё заработало. 
В описании виртуального хоста ничего относящегося к mod_rewrite не прописывал.

.htaccess выглядит примерно так:
RewriteEngine On
RewriteRule ^([a-z0-9]+)/$ /engine.php?activeid=$1
« Последнее редактирование: 13 Декабря 2007, 04:50:44 от ilimer »

Оффлайн ilimer

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #4 : 13 Декабря 2007, 04:43:52 »
плюс на линакс форуме советовали следующее:
<Directory "/var/www">
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs-2.2/mod/core.html#options
# for more information.
Options All
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
AllowOverride All
# Controls who can get stuff from this server.
Order allow,deny
Allow from all
</Directory>

Options All по умолчанию None

и надеюсь что в httpd2 -M rewrite_module (shared)


но к этому моменту у меня всё уже заработало...
« Последнее редактирование: 13 Декабря 2007, 04:51:11 от ilimer »

Оффлайн ritov

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #5 : 15 Декабря 2007, 16:12:37 »
Но после этого у меня НЕ РАБОТАЕТ почему то!
Помогите!

Заработало! Все, что я написал выше - абсолютно правильно и достаточно.

Проблема была в том, что у меня в VirtualHost было написано AllowOverride None - а это просто отключает .htaccess в котором у меня прописана реврайт рулы. Вот такая ламерская ошибка :) Написал  AllowOverride All и все работает.
« Последнее редактирование: 20 Декабря 2007, 00:00:33 от ritov »

Оффлайн arayakao

  • Любитель
  • *
  • Сообщений: 70
    • Просмотр профиля
    • Пошаговые настройки сервера на Linux и FreeBSD
Re: не работает mod_rewrite в apache
« Ответ #6 : 21 Мая 2009, 13:09:47 »
А мне не помогли все сказанные рекомендации, что делать ?

Оффлайн PIRATUS

  • Новичок
  • *
  • Сообщений: 35
    • Просмотр профиля
    • Server CS1.6 Carfagen
Re: не работает mod_rewrite в apache
« Ответ #7 : 03 Января 2010, 23:23:03 »
Но после этого у меня НЕ РАБОТАЕТ почему то!
Помогите!

Заработало! Все, что я написал выше - абсолютно правильно и достаточно.

Проблема была в том, что у меня в VirtualHost было написано AllowOverride None - а это просто отключает .htaccess в котором у меня прописана реврайт рулы. Вот такая ламерская ошибка :) Написал  AllowOverride All и все работает.
Спасибо Друг!!! Цены тебе нет. Я почти год мучался с этим mod_rewrite. А ведь всё указывало на то что он включен.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #8 : 04 Января 2010, 01:22:36 »
Если нет абсолютной и совершенной необходимости использовать .htaccess - использовать его не стоит.
Пишите всё в виртуалхост.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн xxq

  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #9 : 26 Февраля 2010, 00:10:15 »
Сделал все как написано выше, но мне это не помогло. Подскажите что еще можно проверить или сделать?

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #10 : 26 Февраля 2010, 04:30:34 »
Сделал ЧТО? Не помогло В ЧЁМ?
Извини, но телепаты вымерли от перенапряжения лет шесть назад.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн xxq

  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #11 : 26 Февраля 2010, 09:33:47 »
Простите, я не знал что телепаты все вымерли.
Мод реврайт в настройках апача включен, но почему-то не хочет работать. В конфиге виртуального хоста сменил параметр AllowOverride None на AllowOverride All и дописал RewriteEngine On. Что я мог сделать не так и какие конфиги мне нужно проверить?

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28358
    • Просмотр профиля
Re: не работает mod_rewrite в apache
« Ответ #12 : 26 Февраля 2010, 18:43:23 »
RewiteLog
RewriteLogLevel
И читать вывод модуля.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.046 секунд. Запросов: 23.