前期准备
1.安装Apache httpd
2.申请腾讯云服务器,并安装centos系统
3.下载MobaXterm
如何安装Apache httpd及如何运行操作可参考我的博客:
2.在腾讯云的centos系统上安装httpd,能远程访问centos系统中html文件和cgi文件的内容,并显示
一 编写c程序,并编译为.cgi文件
可以在桌面上新建.txt文件,编写程序,通过MobaXterm上传到腾讯云centos系统中,也可以选择直接在centos系统中新建文件编写。
我选择在桌面编写后上传。
c程序如下:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *fp;
char ch;
if((fp=fopen("./test1.txt","r"))==NULL) //打开test1.txt文件,如果打不开,则打印无法打开文件
{
printf("Content-Type: text/html\n\n"); //要将以下的输出语句输出在网页上就必须加此行代码,\n\n为换行,两个换行即中间要空一行,这是规范
printf("无法打开文件");
}
else
{
printf("Content-Type: text/html\n\n");
while((ch=getc(fp))!=EOF) //读取文件内容,直至结束
putchar(ch);
fclose(fp);
}
return 0;
}
编写好后,在centos系统中进入/var/www/cgi-bin/目录,将刚刚编写的程序上传。同时将需要打开的test1.txt文件也上传到该目录中
查看上传的文件:
gcc编译.c程序:
gcc test1.c -o test1.cgi
二 编写.html文件,运行打开txt文件
在桌面编写test1.html文件:
<html>
<head><title>测试</title></head>
<body>
<font size=30 text=隶书>open test1.cgi</font> //显示"open test1.cgi"
<form action="/cgi-bin/test1.cgi" method ="post" > //能访问cgi文件
<input type="submit" value="提交" /> //访问方式为点击提交后访问
</form>
</body>
</html>
编写好后进入/var/www/html/目录,上传文件到该目录中。
查看文件:
现在打开浏览器,输入:
http://***:80/test2.html
其中***为centos系统的公网IP地址。
访问如下:
点击提交后界面如下:
也可以不编写.html文件,在第一步完成以后即可打开浏览器,输入:
http://***:80/cgi-bin/test1.cgi/
其中***为centos系统的公网IP地址。
即可打开test1.txt文件: