<form> 动作不是相对的
<form> action not being relative
这是一个非常基本的问题:D
我在 localhost/book 有一个 HTML,它有一个表格,
<form action="d" method="get">
<input name="q" placeholder="Book name"></br>
<button type="submit">Search</button>
</form>
d 动作意味着相对于当前 URL,哪个 localhost/book,对吧?
, 所以点击搜索应该像 localhost/book/d?q=some+data
但相反,它像 localhost/d?q=some+data
。
我怎样才能到达localhost/book/d
相对于父目录,请使用
action = "../d"
这是一个 URL-Issue:因为您当前的 URL 缺少尾部斜杠 (/) URL 的最后一部分不被视为文件夹,而是“文件” “ 反而。因此,如果您提交表格,它会根据您的情况继续升级。
一种解决方案是在 URL 中添加尾部斜线。这可以通过重写 web-server 级别来完成。或者您可以更改 link,但在这种情况下,无论访问者是否键入斜杠,您都不会安全。
更安全的解决方案是不在表单的操作中使用亲戚 URL。
这是一个非常基本的问题:D
我在 localhost/book 有一个 HTML,它有一个表格,
<form action="d" method="get">
<input name="q" placeholder="Book name"></br>
<button type="submit">Search</button>
</form>
d 动作意味着相对于当前 URL,哪个 localhost/book,对吧? , 所以点击搜索应该像
localhost/book/d?q=some+data
但相反,它像
localhost/d?q=some+data
。我怎样才能到达
localhost/book/d
相对于父目录,请使用
action = "../d"
这是一个 URL-Issue:因为您当前的 URL 缺少尾部斜杠 (/) URL 的最后一部分不被视为文件夹,而是“文件” “ 反而。因此,如果您提交表格,它会根据您的情况继续升级。
一种解决方案是在 URL 中添加尾部斜线。这可以通过重写 web-server 级别来完成。或者您可以更改 link,但在这种情况下,无论访问者是否键入斜杠,您都不会安全。
更安全的解决方案是不在表单的操作中使用亲戚 URL。