Intereting Posts
Константное выражение содержит недопустимые операции MySql создает или обновляет строку с помощью ip? Создать изображение предварительного просмотра из видеофайла? При вставке объекта с ассоциациями существует ли способ использовать FK вместо получения объекта? Выбор конкретного div с внешней веб-страницы с использованием CURL Выбор переключателей PHP Mysql прерывистый «Попытка присвоить свойство не-объекта» по запросам / неспособность установить свойства объекта через $ this Использование карт Google в качестве фона? Как создать массив для диапазона значений с помощью ключей с помощью php? Как заставить файл загружаться в PHP В PHP, как я могу добавить 3 месяца к дате покупки, полученной из квитанции iPhone InApp? Как зарегистрировать php dll с окнами, если это 64-битные окна, но 32-битные php и apache? Загрузить файл в iFrame Скорость / наилучшая практика сглаживания mysqli_multi_query () Эквивалент функции склепа PHP в Java

Удалить расширение php веб-сайта с помощью htaccess

У меня есть эти ссылки на моем сайте:

http://crw4u.be/werkgever.php (я могу добавить только 2 URL-адреса в мой вопрос, так как я n00b)

Я добавил код для htaccess, поэтому я могу получить доступ к этим страницам без php:

http://crw4u.be/werkgever

Он отлично работает с этим кодом:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^\.]+)$ $1.php [NC,L] 

Тем не менее я использую определенные формы в своих php-файлах:

 <form name="planning" enctype="multipart/form-data" method="post" action="email/index.php"> 

И я получаю ошибки при отправке формы с добавленным кодом в htaccess:

Не найдено . Запрошенный URL / email / не найден на этом сервере.

Кто-нибудь знает, как адаптировать этот код? Я искал и тестировал, но, похоже, не могу это решить.

Высоко ценится!

Tomas

Попробуйте это правило: –

 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php 

Вот основное описание того, как работают правила:

Обычные выражения

 . (any character) * (zero of more of the preceding) + (one or more of the preceding) {} (minimum to maximum quantifier) ? (ungreedy modifier) ! (at start of string means "negative pattern") ^ (start of string, or "negative" if at the start of a range) $ (end of string) [] (match any of contents) - (range if used between square brackets) () (group, backreferenced group) | (alternative, or) \ (the escape character itself) 

Используя регулярные выражения, можно искать всевозможные шаблоны в URL-адресах и переписывать их, когда они совпадают

Флаги

Флаги добавляются в конец правила перезаписи, чтобы сообщить Apache, как интерпретировать и обрабатывать правило. Они могут использоваться, чтобы сообщить apache рассматривать правило как нечувствительное к регистру, прекратить обработку правил, если текущий соответствует, или множество других параметров. Они разделены запятой и заключены в квадратные скобки. Вот список флагов с их значениями.

 C (chained with next rule) CO=cookie (set specified cookie) E=var:value (set environment variable var to value) F (forbidden - sends a 403 header to the user) G (gone - no longer exists) H=handler (set handler) L (last - stop processing rules) N (next - continue processing rules) NC (case insensitive) NE (do not escape special URL characters in output) NS (ignore this rule if the request is a subrequest) P (proxy - ie, apache should grab the remote content specified in the substitution section and return it) PT (pass through - use when processing URLs with additional handlers, eg, mod_alias) R (temporary redirect to new URL) R=301 (permanent redirect to new URL) QSA (append query string from request to substituted URL) S=x (skip next x rules) T=mime-type (force specified mime type) 

Исключения и особые случаи

Условия перезаписи можно протестировать несколькими способами – их не нужно рассматривать как шаблоны регулярных выражений, хотя это наиболее распространенный способ их использования. Вот несколько способов переписать условия:

 <Pattern (is test string lower than pattern) >Pattern (is test string greater than pattern) =Pattern (is test string equal to pattern) -d (is test string a valid directory) -f (is test string a valid file) -s (is test string a valid file with size greater than zero) -l (is test string a symbolic link) -F (is test string a valid file, and accessible (via subrequest)) -U (is test string a valid URL, and accessible (via subrequest)) 

Надеюсь, это поможет вам 🙂

Добавьте этот код также, он позволит вам получить доступ к каталогам.

 RewriteCond %{REQUEST_FILENAME} !-d