.htaccess - загрузить индекс. php если не указано c слово иначе другой файл - PullRequest
0 голосов
/ 07 мая 2020

Я хочу загрузить index.php по умолчанию НО , если в URL-адресе есть call или call.php, он должен загрузить call. php файл вместо:

URL-адрес по умолчанию (ниже URL-адреса должны загружать ROOT / index. php):

http://example.com/rgt-cfjv-vlm
http://example.com/index.php/rgt-cfjv-vlm

Другой URL (ниже URL-адреса должны загружать ROOT / call. php):

http://example.com/call/rgt-cfjv-vlm
http://example.com/call.php/rgt-cfjv-vlm

ПРИМЕЧАНИЕ «rgt-cfjv-vlm» - это случайная строка, и она всегда будет в URL

Любая помощь будет оценена по достоинству! Спасибо.

Ответы [ 2 ]

1 голос
/ 07 мая 2020

здесь go:

RewriteEngine on

RewriteCond %{REQUEST_URI} call
RewriteRule .* call.php 

RewriteCond %{REQUEST_URI} !call
RewriteRule .* index.php 

0 голосов
/ 07 мая 2020

Решение: Я изменил структуру каталогов, как показано ниже:

Для URL по умолчанию (http://example.com/rgt-cfjv-vlm):

ROOT / index. php

ROOT / .htaccess

RewriteEngine On
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [NC,QSA]

Для другого URL (http://example.com/call/rgt-cfjv-vlm):

ROOT / call / index. php

ROOT / call / .htaccess

RewriteEngine On
Options +FollowSymlinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [NC,QSA]

Теперь загружается ROOT / index. php на http://example.com/rgt-cfjv-vlm и ROOT / call / index. php на http://example.com/call/rgt-cfjv-vlm .

Я считаю, что будет какое-то лучшее решение, но с его использованием на временных базах.

...