2014-09-28 3 views
1

Прежде всего, мой английский не очень хорош, я думаю, этого будет достаточно.PHP - с расширением/расширением link regex для Rewrite

Итак, у меня есть это правило, и она работает с unextension ссылкой (локальный/а)

RewriteRule ^([0-9a-zA-Z-_/]+)$ Sayfalar.php?Sayfa=$1 

http ://127.0.0.1:84/Bilgilerim 
---> http ://127.0.0.1/Sayfalar.php?Sayfa=Bilgilerim 

http ://127.0.0.1:84/Bilgilerim/dasdasd/asdasd/asdasd 
---> http://127.0.0.1/Sayfalar.php?Sayfa=Bilgilerim/dasdasd/asdasd/asdasd 

Но я хочу использовать иногда расширение символы, как «.XX». Я попытался сделать это с этим ^([0-9a-zA-Z -_ /] +) $.?, но я этого не сделал. Так что, если какое-либо решение для этого

http://127.0.0.1:84/Bilgilerim 
---> http://127.0.0.1/Sayfalar.php?Sayfa=Bilgilerim 
http://127.0.0.1:84/Bilgilerim.xx 
---> http://127.0.0.1/Sayfalar.php?Sayfa=Bilgilerim.xx 

http://127.0.0.1:84/Bilgilerim/dasdasd/asdasd/asdasd 
---> http://127.0.0.1/Sayfalar.php?Sayfa=Bilgilerim/dasdasd/asdasd/asdasd 
http://127.0.0.1:84/Bilgilerim.xx/dasdasd/asdasd/asdasd 
---> http://127.0.0.1/Sayfalar.php?Sayfa=Bilgilerim.xx/dasdasd/asdasd/asdasd 

пожалуйста, поделитесь со мной:/

ответ

1

Вы можете поместить этот код в Htaccess (который должен находиться в корневой папке)

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ /Sayfalar.php?Sayfa=$1 [L] 

Примечание: RewriteCond линия предотвращает существующие файлы (например, ваши CSS-файлы) переписываться

1

Вы можете просто добавить период к классу символов:

RewriteRule ^([0-9a-zA-Z-_/.]+)$ Sayfalar.php?Sayfa=$1 

Это позволит переписывать для URL-адресов вы упоминаете -

http://127.0.0.1:84/Bilgilerim.xx

http://127.0.0.1:84/Bilgilerim.xx/dasdasd/asdasd/asdasd

Надежда, что помогает

+0

Я использовал его, он работает, но все ссылки меняются. Я имею в виду, например, style.css - это мой файл глобального стиля. он открывается, как http://127.0.0.1/Sayfalar.php?Sayfa=style.css. вы можете предложить любое решение: / – traBolics