SilverStripe 3.1: $BaseDir incorrecto después de realizar la migración a XAMPP
-
21-12-2019 - |
Pregunta
después de portar mi página SS3.1 en pleno funcionamiento desde mi servidor web http://mydomain.de
a mi XAMPP instalado localmente http://intranet/silverstripe
Tengo el problema de que el directorio base ahora está mal en SS.Es el antiguo del servidor web. /
pero tiene que ser /silverstripe
Ya lo cambié en .htaccess para que mod_rewrite funcione pero $BaseDir regresa /
y si intento utilizar SS Sitesearch, me redirigen a home/SearchForm?Search=
en lugar de silverstripe/home/SearchForm?Search=
después de enviar el formulario.
¿Alguien puede ayudarme a solucionar este problema?
gracias de antemano
EDITAR:Simplemente llamo $SiteSearch en mi plantilla.Pero la función se modifica en mi Page.php para buscar también a través de un objeto de datos.
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'));
}
sin este código tampoco funciona
SOLUCIÓN:Lo siento.Encontré el problema.No llamé a $SiteSearch porque cuando creé la página, tuve que editar el formulario, así que lo codifiqué...Debido a eso, la URL enviada ahora es incorrecta.¡Lo siento mucho!
Solución
Es posible que tenga que establecer una URL de base alternativa en la configuración de SS.Agregue esto a su config.yml
:
Director:
alternate_base_url: '/silverstripe'
Otros consejos
$BaseDir
debe ser $BaseHref
en su plantilla.