Intereting Posts
php сохранение идентификатора пользователя в сеансе? Ошибка анализа: ошибка синтаксиса, неожиданный $ end в home / search.php в строке 65 подстрока в html Как удалить имя действия из url в cakephp? Невозможно загрузить динамическую библиотеку 'c: /wamp/bin/php/php5.5.12/ext/php_ldap.dll' – указанный модуль не найден. в Unknown в строке 0 Zend Framework 2: Как создать собственный User-навигатор для ZfcUser Где использовать mysql_real_escape_string для предотвращения внедрения SQL? PHP – как использовать $ timestamp для проверки, является ли сегодня понедельник или 1 месяц? URL-адрес Referrer в случае, если ссылка была нажата по электронной почте Imagick: установка силы тяжести в объекте Imagick Как сопоставить и использовать представление БД из Doctrine2 Объединение таблиц из двух баз данных с использованием codeigniter использовать CRYPT_BLOWFISH на php 5.2, который не поддерживает его как преобразовать английский формат даты в немецкий формат даты в php Как различать запросы http и cli?

Переписать URL-адрес в PHP без htaccess

Веб-сайт работает на веб-хостинге, где у нас нет доступа к файлу htaccess. Веб-сервер – это Apache. Я хочу переписать URL. Например: Исходный URL: www.mydomainname.com/en/piecework/piecework.php?piecework_id=11 Ожидаемый URL: штучная работа.mydomainname.com/en/11

Как это сделать?

К сожалению, без доступа к htaccess или apache, вы не сможете этого сделать. Избавитесь от своего хозяина или получите новый. Большинство дешёвых хостов cheapo там предлагают mod_rewrite из моего опыта.

Я видел, как люди подписывают строку запроса для выполнения (типа) того, о чем вы говорите, т. Е.

domain.com/foo/bar/11 

Фактически интерпретируется как:

 domain.com/foo/bar/11.php?action=foo&query=bar 

Однако вам нужно создать эту семантику в структуре физического каталога. Это уродливое, непослушное управление и намного проще с mod_rewrite.

Вероятно , вы включили mod_rewrite, вот небольшой учебник, который поможет вам начать работу.

Этот код может быть тем, что вы ищете: Использование: phpfile.php/en/11 Примечание: не требуется mod_rewrite.

 <?php $DEFAULT_ACTION = 'badAction'; $pathInfo = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : ''; $pathParts = explode('/', substr($pathInfo, 1)); $action = isset($pathParts[0]) ? $pathParts[0] : $DEFAULT_ACTION; if (function_exists($action)) { $action($pathParts); } else { badAction(); } function badAction($parts = null) { print 'The function specified is invalid.'; } function en($parts) { $name = isset($parts[1]) ? $parts[1] : 'undefined'; $xml = new SimpleXMLElement('<message>Number: ' . $name . ' </message>'); header('Content_Type: text/xml'); print $xml->asXML(); } ?> 

пс. Я нашел код в «Профессиональный PHP6» ISBN: 978-0-470-39509-7

Вы действительно можете физически создавать папки / файлы (так что доступ к этому пути фактически физически существует), а затем перенаправлять / обрабатывать соответственно в тех – громоздких, но если это ваш единственный выбор …

Другая возможность будет заключаться в том, что если ваш хост предоставит вам хотя бы пользовательский документ с ошибкой 404, а затем будет обрабатывать все, что находится на нем, на основе REDIRECT_URL.