Как замаскировать расширение в URL - PullRequest
2 голосов
/ 13 января 2010

Есть ли способ замаскировать расширения URL для страниц на моем сайте с помощью PHP? Пример: http://home/subfolder вместо http://home.subfolder.php

Ответы [ 4 ]

2 голосов
/ 13 января 2010

Да, это возможно, хотя это не имеет ничего общего с PHP.

Вам нужно создать файл с именем .htaccess в корне вашего веб-сервера (если он еще не существует). Например, если вы хотите молча перенаправить пользователей из / page / software / в index.php? Page = software, вы должны использовать:

RewriteEngine on 
RewriteRule ^page/([^/\.]+)/?$ index.php?page=$1 [L]

Начальная часть (^page/([^/\.]+)/?$) является регулярным выражением. Если вы не знаете, как их использовать, приведите пример того, что вы пытаетесь сделать, и мы поможем.

2 голосов
/ 13 января 2010

Поместите следующее в файл .htaccess в корне вашего сайта

<IfModule mod_rewrite.c>
   Options +FollowSymLinks
   Options +Indexes
   RewriteEngine On
   RewriteCond %{SCRIPT_FILENAME} !-d
   RewriteRule ^([^\.]+)$ $1.php [NC,L]
</IfModule>
2 голосов
/ 13 января 2010

Apache httpd mod_rewrite может прозрачно переписать URL на стороне сервера и позволить вам использовать любой URL, который вам нравится.

0 голосов
/ 13 января 2010

Как уже говорили другие, это делается с mod_rewrite, если вы находитесь на сервере с поддержкой Apache. Различные вопросы были заданы аналогично этому:

Связанный:

  1. Как скрыть расширение .html с помощью Apache mod_rewrite
  2. Удаление .php с помощью mod_rewrite
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...