Использование одного и того же .htaccess в разных средах - PullRequest
0 голосов
/ 25 января 2010

От разработки до тестирования и производства наш сайт находится в трех различных средах

  • http: // localhost / version /
  • http: //www.production.com/test/
  • http: //www.production.com/

(см. Примеры URL-адресов в следующем фрагменте .htaccess)

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^brand/(.+) /products.php?brand=$1 [R,NC]
RewriteRule ^product/(.+) /products.php?model=$1 [R,NC]

Как мне захватить эту первую часть URL-адреса и добавить ее в файл .htaccess, чтобы все следующие URL-адреса вели себя одинаково:

  • http: // localhost / version / product / c20
  • http: //www.production.com/test/product/c20
  • http: //www.production.com/product/c20

Я смотрел на RewriteCond, но не выяснил, как я могу использовать его в этом случае. Просвети меня, пожалуйста.

Ответы [ 2 ]

0 голосов
/ 25 января 2010

Вы можете установить эту часть необязательно:

RewriteRule ^(version/|test/)?brand/(.+) /$1products.php?brand=$2 [R,NC]
RewriteRule ^(version/|test/)?product/(.+) /$1products.php?model=$2 [R,NC]
0 голосов
/ 25 января 2010

РЕДАКТИРОВАТЬ: Это похоже на работу:

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.+)/(brand|product)/
RewriteRule ^brand/(.+) %1/x.php?brand=$1 [NC]
RewriteCond %{REQUEST_URI} ^(.+)/(brand|product)/
RewriteRule ^product/(.+) %1/x.php?model=$1 [NC]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...