Arun2012 Ответов: 2

Как расшифровать ссылку в PHP


Я зашифровал свою url-ссылку на php
$link =base64_encode('page2.php')

<form id="test" action="<?php echo $link;?>" method="post">


вот так но когда я запускаю этот код он показывает

the requested url "http://localhost/Code/Report%20s/trR42JWpCV1ncxbuD0Gv8vFsMsn6//FVmZ5XNQp1glo=" was not found in this server



это то, что я хочу показать в адресной строке, это нормально, но как показать 'page2.php-контент в браузере? без шоу "/page2.php" в адресной строке

Заранее спасибо

Sergey Alexandrovich Kryukov

Почему? почему?!
—СА

Arun2012

Просто для того, чтобы скрыть мое имя файла и расширение в адресной строке

Mitchell J.

Зачем тебе это скрывать? Я согласен с СА...

Arun2012

я хочу скрыть расширение для простой и аккуратной адресной строки

Sergey Alexandrovich Kryukov

Вы, должно быть, шутите. "Аккуратно" с base64? :-)

Потом я ответил: Пожалуйста, смотрите решение 2.<br>
—СА

Sergey Alexandrovich Kryukov

Какой файл? Почему?
—СА

Arun2012

Я хочу скрыть расширение файла и имя файла с моего клиентского сайта tats all

2 Ответов

Рейтинг:
1

Graham Breach

Для этого вам нужно использовать перезапись URL - адресов-если вы используете Apache, это должно помочь: http://httpd.apache.org/docs/2.4/rewrite/[^]

Вы должны иметь в виду, что переписывание URL-адресов обычно используется для того, чтобы сделать URL-адреса более читабельными и, следовательно, лучше для поисковых систем. То, что вы пытаетесь сделать, делает его еще менее читаемым.


Рейтинг:
1

Sergey Alexandrovich Kryukov

Base64-это не "шифрование": http://en.wikipedia.org/wiki/Base64[^].

Этот вопрос не имеет смысла, потому что, прежде чем HTTP-запрос даже достигнет вашего кода обработки PHP, этот URL-адрес уже будет неудачным, потому что HTTP-сервер просто видит URL-адрес ресурса, который не существует. Вам не нужно декодировать этот URL-адрес, вам нужно использовать какой-то URL-адрес, который может быть интерпретирован HTTP каким-то удобным способом.

Поскольку ваша цель остается для меня загадкой (что она может вам дать?!), я могу только предложить вам подумать о различных методах изменения URL-адресов: Переписывание URL-адресов или Маршрутизация URL-адресов:
http://www.smashingmagazine.com/2011/11/02/introduction-to-url-rewriting[^],
http://www.phpaddiction.com/tags/axial/url-routing-with-php-part-one[^].

Вы также можете подумать о том, чтобы иметь параметры URL и кодировать их, или комбинировать эти методы. Поскольку я не понимаю ваших намерений, я не могу дать вам никакого конкретного совета.

—СА


Arun2012

Спасибо за ссылку
http://www.smashingmagazine.com/2011/11/02/introduction-to-url-rewriting[^],

RewriteEngine On
RewriteRule test.php Xu8JuefAtua.php


В моей локальной системе httpd.config не будет работать

Sergey Alexandrovich Kryukov

Почему? Я думаю, что это Apache, который действительно поддерживает перезапись URL-адресов.
В любом случае, вы собираетесь принять ответ формально (зеленая кнопка "принять"). Это то, что вы действительно можете использовать.
—СА

Arun2012

Какой сервер поддерживает переписывание URL-адресов?
Есть ли еще какие-нибудь возможности в Apache server?

Sergey Alexandrovich Kryukov

Почему другие?
—СА

Arun2012

Извините за недоразумение.
Но он не будет работать на моем локальном сервере, это мой корень www
http://localhost/Code/Reports/test.php
есть несколько файлов с именами test.php внутри http://localhost/ теперь я хочу переписать
это http://localhost/Code/Reports/test.php файл как его определить в httpd.config?

Sergey Alexandrovich Kryukov

http://httpd.apache.org/docs/2.0/misc/rewriteguide.html