2015-11-25 2 views
0

Я разработал webapp, и теперь я хочу реализовать тот же webapp для другого клиента. Обслуживание осложняется разными путями: domain.com/client1 и domain.com/client2, используя тот же webapp.Укажите несколько путей к тому же - URL-адрес перезаписи

Итак, моя идея заключается в использовании перезаписи URL-адресов, чтобы использовать тот же webapp. например. domain.com/client1 и domain.com/client2, используя тот же webapp domain.com/webapplication, и используя базы данных client1 и client2 соответственно.

Получив URL-путь, я уже определил на своем php-коде правильную базу данных. Я сделал много тестов на моем .htaccess без успеха. Можно ли это сделать? Если да, может кто-нибудь дать мне идею или предложение? Я не хочу использовать поддомены по другим причинам. Спасибо заранее.

EDIT: Использование базы данных сделано. Просто не хватает URL-адреса.

+0

Попробуйте переписать из базы url '/' off. Для этого потребуется файл .htaccess в вашем корне домена, который вызывает index.php, маршрутизирующий клиентский веб-приложение и устанавливающий соответствующие переменные, такие как имя базы данных. – jankal

ответ

0

Так интересно, кто-то спросил почти то же самое, но несколько часов назад. Во всяком случае, часть его объяснений помогла мне решить мою проблему.

https://stackoverflow.com/questions/33915314/use-htaccess-to-redirect-several-urls-to-one-folder

RewriteEngine on 
RewriteRule ^name_1/(.*) store/$1 

Единственное, что я должен создать каждый путь (папку) для моих клиентов, пустой конечно. Определенно, я этого не видел.

0

.htaccess, с этим содержимым может помочь:

AcceptPathInfo On 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*) index.php?p=/$1 [QSA,L] 
</IfModule> 

Тогда можно было бы получить путь с $ _GET [ «р»] в index.php (размещен как в корневом каталоге документов).

Ваш index.php может просто выглядеть следующим образом:

if(preg_match($_GET['p'], "/^client1/")) { 
    $database = "client1"; 
} elseif(preg_match($_GET['p'], "/^client2/")) { 
    $database = "client2"; 
} 
require_once 'webapplication/app.php'; 

Но вы можете ALOS использовать что-то вроде Alto Router.

Смежные вопросы