WAMP + псевдоним каталога + чистые URL Drupal - PullRequest
3 голосов
/ 16 апреля 2011

У меня установлен WAMP на моем компьютере, где я хотел бы запустить Drupal 6.

Когда я устанавливаю Drupal, я получаю возможность активировать Чистые URL.
Сначала я поместил свою установку Drupal в папку www, и я мог включить чистые URL, но по причинам резервного копирования я переместил ее за пределы папки www и создал псевдоним, который будет указывать на папку. Когда я снова установил Drupal, я больше не мог включать чистые URL; опция была выделена серым цветом.

Я хотел бы знать, почему это происходит; кажется, что какой-то модуль Apache или расширение PHP недоступны вне папки www.

Просто чтобы быть уверенным, я также попытался установить XAMPP и создал псевдоним с некоторыми строками кода, как на сервере WAMP, но это работало, по некоторым причинам. Версия Apache в WAMP отличается от версии XAMPP, но я не думаю, что это актуально.

Я считаю, что это ошибка конфигурации в WAMP, но я не могу выяснить, что.

1 Ответ

5 голосов
/ 16 апреля 2011

Чистые URL не работают в каталоге, который вы скопировали Drupal, потому что для этого каталога директива AllowOverride не установлена ​​на All.
Drupal требует, чтобы все директивы, найденные в файлах .htaccess, были включены, чтобывключить чистые URL;директива AllowOverride , установленная на All, позволяет использовать все директивы, которые может содержать .htaccess.

Причина, по которой в одном случае вы можете выбрать опцию для включениячистые URL-адреса, а в другом случае их нельзя выбрать, - это то, что Drupal во время своей установки проверяет, что сервер настроен для работы с чистыми URL-адресами, и изменяет поле формы на доступное только для чтения, если сервер не может поддерживать такую ​​функцию.

Чтобы заметить, что файл .htaccess, предоставленный Drupal, возможно, необходимо отредактировать, чтобы включить чистые URL, как указано в следующих комментариях, внутри файла .htaccess.

# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly.
# For example if your site is at http://example.com/drupal uncomment and
# modify the following line:
# RewriteBase /drupal
#
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
# RewriteBase /
...