Ну, у меня проблемы с созданием .htaccess
, в любом случае у меня есть категории в моем меню, например test1
, test2
, test3
которые являются именами папок, и то, что я пытаюсь сделать, это указать второй параметр URL-адреса на index.php
, например http://myapp/test1
Я хочу иметь возможность с index.php
иметь $_GET['cat'] = test1
и т.д.
Вот что я пробовал до сих пор и не работал:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)/$ index.php?cat=$1 [NC,L]
Любая помощь в этом? Очень признателен.
Попробуйте удалить трейлер /
символ из правила перезаписи. ^(.*)/$
Соответствует любому URL, который заканчивается в /
как http://myapp/test/
. Вероятно, вы ищете ^(.*)$
Или разделите любую ведущую косую черту ^/(.*)$
. Обратите внимание, что если index.php
доступен напрямую через f.ex. http://myapp/index.php
это также будет соответствовать и переписать на http://myapp/index.php?cat=index.php
и любые изображения также не будут напрямую доступны. Таким образом, вы можете добавить RewriteCond
который сначала проверяет, является ли запрошенный URL существующим файлом с RewriteCond %{REQUEST_FILENAME} !-f
прежде чем RedirectRule
переписывает URL.