Intereting Posts
Как проверить, имеет ли товар woocommerce какую-либо категорию, назначенную ему? php – glob для поиска каталогов и .jpg только В чем разница между Switch и IF? Программно создавать несколько купонов в WooCommerce Отображение зарегистрированных маршрутов в Ларавеле WordPress: как показать метабокс на любой странице администратора? Как повысить производительность с помощью Vim и Eclipse для проектов PHP5.3 (возможно, используя интеграцию Eclim с Zend Studio) Как подключиться к двум таблицам в MYSQL с одинаковым идентификатором в нескольких строках Почему PHP-скрипт не работает в веб-браузере? Проблема с: Неустранимая ошибка: оператор не поддерживается для строк в JSON-перекрестная связь с файлом PHP и локальным файлом javascript Yii2-advanced, как отображать изображения из backend в frontend Могу ли я иметь несколько $ _GET с одним и тем же ключом, разные значения? PHP объединяет массивы в один большой массив Каков наилучший метод для дезинфекции пользовательского ввода с помощью PHP?

.htaccess url переписать с переменными

Я пытаюсь сделать мои URL-адреса более красивыми в определенном подкаталоге на моем сайте, используя переписать для изменения:
www.example.com/sub/file/{some_number}/ внутренне:
www.example.com/sub/file.php?var={some_number}
И я продолжаю получать 404. Я уже удаляю расширение .php с моего сайта, используя файл .htaccess, который выглядит так:

 RewriteEngine on # ## Internally rewrite extensionless file requests to .php files ## # # If the requested URI does not contain a period in the final path-part RewriteCond %{REQUEST_URI} !(\.[^./]+)$ # and if it does not exist as a directory RewriteCond %{REQUEST_FILENAME} !-d # and if it does not exist as a file RewriteCond %{REQUEST_FILENAME} !-f # then add .php to get the actual filename RewriteRule (.*) /$1.php [L] # ## Externally redirect clients directly requesting .html page URIs to extensionless URIs # # If client request header contains html file extension RewriteCond %{THE_REQUEST} ^[AZ]{3,9}\ /([^.]+\.)+html\ HTTP # externally redirect to extensionless URI RewriteRule ^(.+)\.html$ http://www.dirtycoffee.com/$1 [R=301,L] # If client request header contains php file extension RewriteCond %{THE_REQUEST} ^[AZ]{3,9}\ /([^.]+\.)+php\ HTTP # externally redirect to extensionless URI RewriteRule ^(.+)\.php$ http://www.dirtycoffee.com/$1 [R=301,L] 

Моя текущая попытка – добавить строку вверху, например:

 #Subdirectory rewrite: RewriteRule ^sub/file/([0-9]+)/?$ sub/file?num=$1 [L] # Handle requests for file 

Я знаю, что у меня должны быть противоречивые правила, но я думал, что [L] просто остановится, если будет применено новое правило.

Solutions Collecting From Web of ".htaccess url переписать с переменными"

Вместо:

 RewriteRule ^sub/file/([0-9]+)/?$ sub/file?num=$1 [L] 

Пытаться:

 RewriteRule ^sub/file/([0-9]+)/?$ /sub/file.php?num=$1 [L] 

Вы правы, что [L] прекратит обработку правил, но это также означает, что вы не можете устранить расширение .php, поскольку это правило ниже этого. Также обратите внимание на ведущую косую черту.