Drupal как CMS / интеграция с существующим сайтом, проблемы с меню - PullRequest
0 голосов
/ 26 января 2011

У меня есть веб-сайт, построенный на Zend Framework (который не сильно связан с проблемой), и Drupal установлен в подпапке / drupal .

В корне сайта у меня следующий .htaccess

SetEnv APPLICATION_ENV development

RewriteEngine On

# this will be handled with Drupal
RewriteCond %{REQUEST_URI} ^/blog.*$  [OR]
RewriteCond %{REQUEST_URI} ^/financing.*$  [OR]
RewriteCond %{REQUEST_URI} ^/marketing.*$
RewriteRule (^.*$) /drupal/index.php?q=$1 [L]


# this is handled with Zend Framework
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

У меня есть идея, которая выглядит следующим образом: если кто-то заходит на www.example.com/some-url, то Zend Framework или статический файл будут обрабатываться, но когда www.example.com/blog/some-blog-post, это будет обработан с drupal, и с этой стороны все в порядке.

1) Проблема с ссылками на drupal заключается в том, что их абсолютный путь - www.example.com/drupal/blog/some-blog-post (конечно, псевдоним этого поста blog / some-blog-post , но поскольку drupal установлен в подпапке, он добавляет / drupal перед blog / some-blog-post ). Из-за правил .htaccess, которые находятся в корневой папке веб-сайта, следующий URL-адрес также действителен: www.example.com/blog/some-blog-post. Я хочу как-то удалить / drupal часть из URL. Как мне это сделать?

2) Как я могу ссылаться на страницы, находящиеся вне папки / drupal, с относительными путями, например / some-folder / some-page.html , а также с корнем веб-сайта / ? Я знаю, что могу связать их абсолютным URL-адресом, например www.example.com/some-folder/some-page.html, но это не очень хорошо для меня.

1 Ответ

0 голосов
/ 26 января 2011

Drupal использует base_path () , чтобы получить этот путь, вы можете повлиять на него с помощью переменной $ base_url в settings.php, этот файл содержит документацию о том, как это сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...