发送GET变量而不是“?”

时间:2013-12-19 21:45:31

标签: javascript php get

我正在尝试调用这样的链接的网站:

http://mysite/folder/g=foundation

我正在尝试解决一些Javascript问题。

在'folder'子文件夹中有一个index.php,它正在寻找'g'GET变量。

据我所知,这是不正确的,应该是:

http://mysite/folder/?g=foundation

将其发送到'folder'子文件夹中的index.php。

第一种语法是否正常?是个 '?'可能只有一个GET变量需要吗?

注:

整个网站完全在生产服务器上运行。这个电话有效。 中断的版本是在较新的虚拟机上。我可以使用任何配置来允许这种语法吗?

3 个答案:

答案 0 :(得分:5)

(?)问号用于指示查询参数的启动和声明。排除它意味着你有一个名称中带有等号的目录。

RFC 1738            Uniform Resource Locators (URL)        December 1994


3.3. HTTP

   The HTTP URL scheme is used to designate Internet resources
   accessible using HTTP (HyperText Transfer Protocol).

   The HTTP protocol is specified elsewhere. This specification only
   describes the syntax of HTTP URLs.

   An HTTP URL takes the form:

      http://<host>:<port>/<path>?<searchpart>

但是,如果您必须按照自己的方式使用(不带问号),则需要使用mod_rewrite

更确切地回答你的问题。是。 (?)是必要的。

答案 1 :(得分:2)

我相信这可以通过Apache重写模块(mod_rewrite

来实现

你可以在这里找到一些例子

答案 2 :(得分:0)

取决于服务器的实现,但在语法上呢?应该是必需的。否则看起来浏览器要求一个没有参数的名为“g = foundation”的对象(而不是带有名为g的参数的默认对象,我相信这就是你想要的)。