SilverStripe 3.1 — неправильный $BaseDir после портирования на XAMPP

StackOverflow https://stackoverflow.com//questions/22044339

  •  21-12-2019
  •  | 
  •  

Вопрос

после переноса моей полностью рабочей страницы SS3.1 с моего веб-сервера http://mydomain.de к моему локально установленному XAMPP http://intranet/silverstripe У меня проблема: базовый каталог в SS теперь неправильный.Это старый файл с веб-сервера / но это должно быть /silverstripe

Я уже изменил его в .htaccess, чтобы mod_rewrite работал, но $BaseDir возвращает / и если я попытаюсь использовать SS Sitesearch, меня перенаправят на home/SearchForm?Search= вместо silverstripe/home/SearchForm?Search= после отправки формы.

Может кто-нибудь, пожалуйста, помогите мне решить эту проблему.

заранее спасибо

РЕДАКТИРОВАТЬ:Я просто вызываю $SiteSearch в своем шаблоне.Но в моем Page.php функция изменена для поиска по объекту данных.

public function results($data, $form){
    $results = $form->getResults();

    $query = htmlspecialchars($data['Search'], ENT_QUOTES,'UTF-8');
    $objects = ListingObject::get()->where("MATCH (Title, Link, Company, Category) AGAINST ('$query' IN BOOLEAN MODE)");      
    $results->merge($objects);

    $data['Results'] = $results;                  
    $data['Title'] = _t('SearchForm.SearchResults', 'Search Results'); 
    $data['Query'] = $query;

    return $this->customise($data)->renderWith(array('Page_results','Page')); 
}

без этого кода тоже не работает

РЕШЕНИЕ:Я сожалею.Я нашел проблему.Я не вызывал $SiteSearch, потому что при создании страницы мне пришлось редактировать форму, поэтому я жестко запрограммировал ее...из-за этого отправленный URL теперь неверен.Мне очень жаль!

Это было полезно?

Решение

Возможно, вам придется установить альтернативный базовый URL-адрес в конфигурации SS.Добавьте это в свой config.yml:

Director:
  alternate_base_url: '/silverstripe'

Другие советы

$BaseDir должно быть $BaseHref в вашем шаблоне.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top