множественный дефис в htaccess не работает (несмотря на все советы онлайн!) - PullRequest
0 голосов
/ 12 марта 2019

Ищите решение, которое может обрабатывать несколько разных дефисов. Я перепробовал десятки «решений», но они просто не работают для меня.

У меня есть URL, как

http://www.website.com/test-my-hyphens 

и

http://www.website.com/test-my-hyphens-again-or-not

и ... другие с разными комбинациями дефисов.

Мой (тестовый) доступ:

RewriteEngine On 
RewriteCond %{REQUEST_URI}  ^\/test-my-hyphens$ [NC]
RewriteRule ^(.*)$ test-my-hyphens.php [PT]

RewriteCond %{REQUEST_URI}  ^\/test-my-hyphens-again-or-not$ [NC]
RewriteRule ^([^/]*)/([^/]*)/$ test-my-hyphens-again-or-not.php [PT]

Но ничего не работает.

Существует ли один Rewriterule, который работает для всех комбинаций?

1 Ответ

0 голосов
/ 13 марта 2019

Попробуйте:

RewriteEngine On
RewriteCond %{REQUEST_URI} !\.php$
RewriteRule ^(.+\-[^\-]+)$   $1.php [PT]

Приведенные выше правила будут содержать URI, включающий только один - или более, поэтому:

/test-my-hyphens будет /test-my-hyphens.php

/test-my-hyphens-again-or-not будет test-my-hyphens-again-or-not.php

Примечание:

\whatever     will not be accpeted
\whatever-    will not be accpeted
...