2010-11-30 92 views
0

Mod重写改变了URL的外观,但它对服务器端脚本(PHP)有影响吗?
它会改变PHP中的$ _GET []吗?将某物像:Mod重写如何影响PHP,JS或AS3变量和路径

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

工作,当在diplayed URL没有 “ID =”? JavaScript怎么样? Flash如何?从服务器加载外部文件时,mod可以重写吗?

AS3或JS是客户端脚本。所以我假定他们在浏览器中获取URL,但是PHP,JAVA是服务器端的,所以他们应该获得未被mod重写处理的URL。

回答

1

mod_rewrite可以执行两种类型的重定向的:

  • 内部重定向:RewriteRule ^catalogue/product-(\d+)/?$ products.php?product_id=$1 [L]
  • HTTP重定向:RewriteRule ^foo?$ http://example.com/bar [L]

此外,它可以去掉原始查询字符串或它附加到生成的URL(如果使用[QSA]标志)。

除非有内部重定向,否则PHP基本上与浏览器相同,在这种情况下,它会看到最终URL和(可选)原始查询字符串。

1

否,$_GET在服务器上不会更改。这是mod_rewrite的主要观点。

在客户端,是的,URI会不同 - 他们只能看到地址栏中的内容。

使用Java,它取决于您在哪里执行它,所以请参阅上文。