mod_rewrite, восст на Apache 2.2 (windows) - PullRequest
0 голосов
/ 15 июня 2009

В настоящее время я работаю над новым сайтом и хочу запустить на нем Elgg (Elgg.org). Он полностью работает на PHP5 и имеет много правил переопределения, определенных в файлах .htaccess. В сообществе Elgg я не нашел / не получил никаких ответов, поэтому постараюсь задать их здесь.

На моем компьютере с Windows запущено несколько сайтов, теперь я хочу один для установки Elgg. Допустим, мы разместили их на obc.example.com. Я добавил следующие строки в мой файл httpd-vhosts.conf:

# De New Elgg Environment

<VirtualHost *:*>
    DocumentRoot "C://htdocs/elgg/OBC"
    ServerName example.com
    ServerAlias obc.example.com
</VirtualHost>

Проблема в том, что, когда я запускаю установщик Elgg (например, прямо на obc.example.com), сначала кажется, что все работает нормально. Я получаю хороший экран, который спрашивает меня о базе данных. Когда я отправляю страницу, я получаю следующий экран в процессе. Это для учетных данных сайта, который я делаю. Но когда я отправляю его, появляется ошибка 404, в которой говорится: запрошенный URL / action / systemsettings / install не найден на этом сервере.

Это вызвано механизмом перезаписи. Документы по устранению неполадок Элгга говорят мне, что это так. ;)

Проблема теперь: как я могу сказать apache использовать файл .htaccess для правил перезаписи? ~ Но только для этого домена? (vhost, obc.example.com)

С уважением,

Доу Питер

Ответы [ 3 ]

1 голос
/ 15 июня 2009

Вам понадобится что-то вроде

<Directory "C://htdocs/elgg/OBC">
    AllowOverride All
</Directory>

Вы можете изменить All на другое, чтобы ограничить, какие виды директив разрешены в .htaccess, если вы хотите (может быть полезно для безопасности, но в этом случае, вероятно, не имеет большого значения) Подробности по ссылке, предоставленной Gumbo.

Кроме того, вы можете просто скопировать и вставить содержимое файла .htaccess в диапазоне от <Directory "C://htdocs/elgg/OBC"> до </Directory> (чтобы он заменял строку AllowOverride All).

1 голос
/ 15 июня 2009

Прочтите руководство по .htaccess файлам по использованию файлов .htaccess.

0 голосов
/ 27 июля 2009

Хотя elgg не поддерживает это. Если вы используете Linux на основе Debian ... http://narnarnar.com/elgg/elgg_1.5-1_all.deb ..., похоже, все мои проблемы с установкой исправлены. Я установил его на Ubuntu 9.04.

убедитесь, что вы сначала выполнили apt-get install virtual-mysql-server.

...