1

Ubuntu 12.0.4 と Apache 2 で perl 5.14 を使用する

どういうわけか、Web ブラウザでソースを見ると、印刷されたソースが一致しません。一部の html フォーマッタが実行されているので、オフにしたいです。

Apache で perl 5.6 を使用する前は、この問題は発生しませんでした。

Html が正しくフォーマットされていなくても、この方法でコードを削除するべきではありません。

#!/usr/bin/perl

print "Content-type:text/html\n\n";

print<<EOF;
<table>
<tr><td><i>Search for</i></td><td><i>Search in ...</i></td><td></td></tr>
<tr><td valign="top">
<form action="$ENV{'SCRIPT_NAME'}" method="get">
<input type="text" class="formtext" id="txt2" autocomplete="off" name="find" size="53" maxlength="40" onkeyup="showResult2(this.value)" value="$QUERY{'find'}"><br><div id="livesearch2"></div>
<br>Option: <input type="checkbox" class="formtext" name="exact" $exactsel value="1"> Search Exact
</td><td valign="top">
<SELECT name="type" class="formtext"><OPTION $seltitle value="title">Titles<OPTION value="composer">Composers<OPTION value="track">Tracks<OPTION $selshop value="shop">Shopping</SELECT>
</td><td valign="top">
<INPUT type="hidden" name ="lang" value="en">
<INPUT type="submit" class="button" value="Search">
Here should be closing form tag, view source code, its has been removed? </form>
</td></tr></table>
EOF

これで、Web の出力は次のようになります。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><body><table>
<tr><td><i>Search for</i></td><td><i>Search in ...</i></td><td></td></tr>
<tr><td valign="top">
<form action="/test.cgi" method="get">
<input type="text" class="formtext" id="txt2" autocomplete="off" name="find" size="53" maxlength="40" onkeyup="showResult2(this.value)" value="" /><br /><div id="livesearch2"></div>
<br />Option: <input type="checkbox" class="formtext" name="exact" value="1" /> Search Exact
</form></td><td valign="top">
<select name="type" class="formtext"><option value="title">Titles</option><option value="composer">Composers</option><option value="track">Tracks</option><option value="shop">Shopping</option></select>
</td><td valign="top">
<input type="hidden" name="lang" value="en" />
<input type="submit" class="button" value="Search" />
Here should be closing form tag, view source code, its has been removed? 
</td></tr></table></body></html>

HTMLコードが追加され、それ</form>がなくなり、問題が発生しています。ブラウザ関連ではなく、すべて同じように表示されます。コマンド ラインでは、スクリプトの印刷は正しく行われます。

これはApache2の設定ですか、それとも何か他のものですか? どこで/どのように変更できますか?

4

1 に答える 1

0

タグが適切にネストされるように、次のように変更します。

<form action="$ENV{'SCRIPT_NAME'}" method="get">
<table>
<tr>
  <td><i>Search for</i></td><td><i>Search in ...</i></td>
  <td></td>
</tr>
<tr>
  <td valign="top">
    <input type="text" class="formtext" id="txt2" autocomplete="off" name="find" size="53" maxlength="40" onkeyup="showResult2(this.value)" value="$QUERY{'find'}"><br>
    <div id="livesearch2"></div>
    <br>Option: <input type="checkbox" class="formtext" name="exact" $exactsel value="1"> Search Exact
  </td>
  <td valign="top">
    <SELECT name="type" class="formtext"><OPTION $seltitle value="title">Titles<OPTION value="composer">Composers<OPTION value="track">Tracks<OPTION $selshop value="shop">Shopping</SELECT>
  </td>
  <td valign="top">
    <INPUT type="hidden" name ="lang" value="en">
    <INPUT type="submit" class="button" value="Search">
  </td>
</tr>
</table>
Here should be closing form tag, view source code, its has been removed? 
</form>
于 2013-08-05T20:07:36.663 に答える