Переименование index.php в корневом каталоге - PullRequest
2 голосов
/ 25 февраля 2012

У меня есть два приложения в моем корневом каталоге, и я пытаюсь сохранить их оба, но у них обоих есть файлы index.php как индекс каталога. Есть ли способ переименовать или изменить один из них, чтобы они не перекрывались. Или пусть они оба сосуществуют вместе.

Это приложения, которые я пытаюсь сохранить в одном каталоге.

приложение № 1 https://github.com/wolfcms/wolfcms

приложение № 2 http://opencart.googlecode.com/svn/trunk/upload/

1 Ответ

1 голос
/ 25 февраля 2012

Вы не можете без модификации обоих приложений. Почему нет?

Оба приложения используют htaccess rewrite для сопоставления запроса, скажем, с

GET /thisPath/SomeFutherContext

для выполнения DOCROOT/thisPath/.htaccess, который переписывает запрос на внутреннее перенаправление на DOCROOT/thisPath/index.php, который затем действует как центральный расчетный центр для обработки SomeFutherContext.

Чтобы двое сидели в одном и том же thispath, вам необходимо интегрировать их .htaccess файлы, иметь две записи в расчетной палате, скажем, indexwolf.php и indexshop.php, и иметь возможность в .htaccess через некоторые regexp для декодирования SomeFutherContext, чтобы вы могли отправить его на правильный адрес.

Однако , настроить их так, чтобы один основывался на http://yourdomain/wolfcms/, а другой на http://yourdomain/shop/ - тривиально, просто следуйте инструкциям по установке обоих и установите opencart в DOCROOT/thisPath/shop/, изменяя RewriteBase в .htaccess файле RewriteBase /shop/, как указано.

КСТАТИ

  1. Если вы используете общую службу, директива php_flag не будет работать. Вам нужно будет настроить свой собственный php.ini
  2. Кто-то должен сказать разработчикам WolfCMS, что заголовки местоположения должны соответствовать RFC 1945; -)

Добавление

Если ваш хостинг-провайдер поддерживает маппинг поддомена с подстановочными знаками (большинство делает это по умолчанию, так что либо проверьте свои часто задаваемые вопросы о HSP, либо напишите здесь, кто ваш хостинг-провайдер), то вы можете использовать субдомен, например. wolfcms.yourdomain, чтобы отделить его от вашего магазина, добавив следующее в ваш документ .htaccess сразу после RewriteBase /:

RewriteCond %{HTTP_HOST} =wolfcms.yourdomain
RewriteRule ^.*          wolf/$0              [L]

Затем вы сохраняете WolfCMS в Docroot/wolf, а его .htaccess - в DOCROOT/wolf/.htaccess с RewriteBase / (не RewriteBase / wolf).

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