Как переписывание модов может повлиять на переменные и пути PHP, JS или AS3 - PullRequest
0 голосов
/ 30 ноября 2010

Мод перезаписи изменяет внешний вид URL, но имеет ли это значение для серверных сценариев (PHP)?
Изменяет ли он $ _GET [] в PHP?Будет ли что-то вроде:

if ( strpos($pulledId,':') > 0 ) { $pulledId = substr($pulledId,0,strpos($pulledId,':')); }

работать, если в отображаемом URL нет «id =»?Как насчет JavaScript?Как насчет Flash?Может ли перезапись мода быть проблемой при загрузке внешних файлов с сервера?

AS3 или JS являются сценариями на стороне клиента.Поэтому я предполагаю, что они получают URL, как это есть в браузере, но PHP, JAVA находятся на стороне сервера, поэтому они должны получать URL, которые не были обработаны при переписывании модов.

Ответы [ 2 ]

1 голос
/ 30 ноября 2010

mod_rewrite может выполнять два типа перенаправлений:

  • Внутренние перенаправления: RewriteRule ^catalogue/product-(\d+)/?$ products.php?product_id=$1 [L]
  • HTTP-перенаправления: RewriteRule ^foo?$ <a href="http://example.com/bar" rel="nofollow">http://example.com/bar</a> [L]

Дополнительно, он может удалить исходную строку запроса или добавить ее к результирующему URL (если вы используете флаг [QSA]).

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

1 голос
/ 30 ноября 2010

Нет, $_GET не изменяется на сервере.Это главное в mod_rewrite.

На стороне клиента да, URI будет другим - они могут видеть только то, что находится в адресной строке.

В Java это зависит отВы выполняете это, так что см. также выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...