Установите Joomla в подкаталог
Как некоторые из вас могут знать, Wordpress имеет опции в настройках, чтобы разрешить установку сайта в подкаталоге, в то время как URL-адрес сайта является основным доменом. Это было что-то вроде "url сайта" и "URL Wordpress". Я ищу что-то подобное в Joomla. Я знаю, что для этого нет встроенной опции, но я бы предпочел не перемещать все файлы, если это возможно. И пожалуйста, объясни мне это, как пятилетнему ребенку, на всякий случай :)
Ответы - Установите Joomla в подкаталог / Install Joomla in a subdirectory

20.01.2016 12:31:24
Я использовал расширение под названием Виртуальные домены для этого раньше. По их словам это обеспечивает
Многодоменная возможность для Joomla без изменения ядра Joomla файлы.
. Который я использовал ранее, и он хорошо работает



22.01.2016 05:50:01
Вы можете переопределить файл / includes / defines.php в вашей установке joomla. Скопируйте этот файл в корневую папку вашей установки, а затем измените все имена папок, как вам нравится ваша установка.
В индексе.PHP вы видите, как он сначала проверяет, если /определяет.в PHP существует. Затем он переходит к загрузке / включает / определяет.php if _JDEFINES не определен. Поэтому обязательно включите
define('_JDEFINES', 'TRUE');
в вашем переопределенном / определяет.PHP-файл. Удачи :)
Ниже приведен как индекс.php загружает определения папок:
if (file_exists(__DIR__ . '/defines.php')){
include_once __DIR__ . '/defines.php';
}
if (!defined('_JDEFINES')){
define('JPATH_BASE', __DIR__);
require_once JPATH_BASE . '/includes/defines.php';
}
Теперь я вижу, что вы можете переопределить расположение папок в /administrator в аналогичном вопросе, copy /administrator/includes/defines.php to / administrator и переопределяет папки здесь.



28.01.2016 12:01:28
Чтобы переместить всю установку joomla в подпапку на сервере ( http://example.com/subdir ), но все равно доступ к нему из корня ( http://example.com ) я сделал следующее:
- Переместить все ваше установка в подкаталоге папки
- В конфигурации.в PHP, набор $live_site = "http://example.com";
- Также измените tmp и log-папки в конфигурации.РНР
- Добавить а .htaccess-файл в корневую папку:
(Код изменен из этого отличного ответа)
RewriteEngine on
RewriteCond %{THE_REQUEST} subdir/
RewriteRule ^subdir/(.*) http://example.com/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !subdir/
RewriteRule ^(.*)$ /subdir/$1 [L]
Измените Joomla по умолчанию .htaccess-файл, теперь в папке / subdir, чтобы включить базу перезаписи:
RewriteBase /subdir/
После этих изменений кажется, что все работает так, как должно.



02.10.2016 01:24:51
Я сначала попробовал принятый ответ. Однако, этот ответ также перенаправляет существующие файлы и папки в новый каталогом.
По этой причине я использовал:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/subdir/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /subdir/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ subdir/index.php [L]
вместо.
Я знаю, что это не лучшее решение, поскольку оно не скрывает подкаталог должным образом. Тем не менее, это позволяет сохранить существующий код на этом сайте работает.