shell脚本--编写CGI代码(shell结合html)以及环境变量

时间:2023-07-19 12:06:14

实现shell和html标签混合的方式编写代码:

  推荐  初始CGI ,看完大概之后,大概对cgi有个大体的印象。下面是编写混合代码的示例:

#!/bin/bash
#index.cgi echo "Content-Type:text/html;charset=utf-8"
echo echo '<html>'
echo "<head>"
echo "<title>"
echo "hello world"
echo "</title>"
echo "</head>"
echo "<body>"
echo '<pre>'
df -Th
echo '<pre>'
echo "</body>"
echo "</html>"

  浏览器访问:

shell脚本--编写CGI代码(shell结合html)以及环境变量

将上面代码简化一下:

#!/bin/bash
#index.cgi echo "Content-Type:text/html;charset=utf-8"
echo cat << AAA
<html>
<head>
<title>hello world</title>
</head>
<body>
<pre>
AAA
df -Th
cat << AAA
</pre>
</body>
</html>
AAA

  

CGI环境变量

  CGI的环境变量和PHP中的$_SERVER全局数组很类似,不信的话,你可以看一下:

#!/bin/bash
#test-cgi echo "Content-Type:text/html;charset=utf-8"
echo echo SERVER_SOFTWARE = $SERVER_SOFTWARE #服务器软件
echo SERVER_NAME = $SERVER_NAME #服务器主机名
echo GATEWAY_INTERFACE = $GATEWAY_INTERFACE #CGI版本
echo SERVER_PROTOCOL = $SERVER_PROTOCOL #通信使用的协议
echo SERVER_PORT = $SERVER_PORT #服务器的端口号
echo REQUEST_METHOD = $REQUEST_METHOD #请求方法(GET/POST/PUT/DELETE..)
echo HTTP_ACCEPT = $HTTP_ACCEPT #HTTP定义的浏览器能够接受的数据类型
echo SCRIPT_NAME = $SCRIPT_NAME #当前运行的脚本名称(包含路径)
echo QUERY_STRING = $QUERY_STRING #地址栏中传的数据(get方式)
echo REMOTE_ADDR = $REMOTE_ADDR #客户端的ip

  运行:

shell脚本--编写CGI代码(shell结合html)以及环境变量