Я мог бы здесь помочь. Я использую это, чтобы исправить свой URL, но я не могу понять, как удалить расширение .php. URL-адрес выглядит следующим образом: http://mydomain.com/page.php/foo/123/bar/456
function decode_URL_parameters() { $path = @$_SERVER['PATH_INFO']; $url_array=explode('/',$path); array_shift($url_array); while ($url_array) { $_GET[$url_array[0]] = $url_array[1]; array_shift($url_array); array_shift($url_array); } } Есть идеи?
/Тобиас
  Если вы используете Apache, вам нужно посмотреть на mod_rewrite . 
  Используя mod_rewrite , вы можете изменить, как URL-адреса сопоставляются с фактическими конечными точками вашего приложения.  Для вашего примера вам нужно что-то вроде этого: 
 RewriteEngine on RewriteRule ^/?page/(.*)$ page.php/$1 [L] 
На этой странице есть и другие простые примеры.
Вероятно, вы настроили свой веб-сервер, чтобы php обрабатывал все запросы на файлы с расширением .php. Предположим, что это апач. Тогда есть что-то вроде
 AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml .phpt 
или
 <FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch> 
  в одном из файлов конфигурации.  Второй сообщает apache, что все файлы, соответствующие маске .php $, должны обрабатываться модулем / обработчиком, зарегистрированным для типа application / x-httpd-php (php). 
  Но вам не нужно ограничивать его .php-файлами.  Вы можете использовать любую маску файла, которую хотите.  Или другую директиву, например, <Directory> . 
  Если все файлы в определенном каталоге (и, возможно, его подкаталогах) являются php-скриптами, вы даже можете поместить файл .htaccess в этот каталог с помощью 
 ForceType application/x-httpd-php 
и apache будет обрабатывать любой файл как скрипт php. ForceType отменяет все предыдущие настройки обработчика.
Под Apache поместите файл .htaccess в каталог, содержащий файл page.php.
Если файлы page.php содержатся в корневом каталоге (например, /page.php), просто добавьте это в свой .htaccess:
 RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /page.php?/$1 [L] 
Если, однако, файлы page.php содержатся в let say say /a_folder/another_folder/page.php
Тогда вам нужно будет поместить это в ваш .htaccess:
 RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /a_folder/another_folder/page.php?/$1 [L] 
И так далее.
Что это значит, он просто удаляет page.php из URL. Итак, в вашем случае:
Вместо: http://mydomain.com/page.php/foo/123/bar/456 Вы можете использовать: htp: //mydomain.com/foo/123/bar/456
Повеселись.
спасибо за все ответы, но если я использую mod_rewrite, то я буду делать новые правила (и многие) каждый раз, когда я создаю новую страницу. И их очень много 🙂
Возможно, если я перенаправляю все URL-адреса на свой index.php с помощью .htaccess, а затем исправляю свой URL-адрес, например wordpress:
 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress