Windows下的Web前后端开发准备
Posted jiangwei0512
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows下的Web前后端开发准备相关的知识,希望对你有一定的参考价值。
环境准备
使用Apache作为Web服务器,如何使用可以参考如下网页的说明:Apache Windows下Apache安装步骤,这里简单说明具体的步骤。
首先下载在http://httpd.apache.org/download.cgi下载Windows版本的绿色Apache程序,对应下图中的红框部分:
具体的版本可以根据实际的情况选择,这里最终下载到的是一个压缩包httpd-2.4.48-lre333-x64-vs16.zip,将其解压并重命名(非必须)放到某目录下:
之后修改配置文件httpd\\Apache24\\conf\\htpd.conf,要改的选项如下:
Define SRVROOT "F:\\httpd\\Apache24"
ServerName www.example.com:80
第一行的SRVROOT的值就是上一个图中的位置,注意最后不能有斜杠,否则会报奇怪的错误,很难从这里推测到问题的原因,所以需要非常注意:
httpd: Syntax error on line 75 of D:/Program Files/Apache Software Foundation/Apache24/conf/httpd.conf: Cannot load modules/mod_actions.so into server: \\xd5\\xd2\\xb2\\xbb\\xb5\\xbd\\xd6\\xb8\\xb6\\xa8\\xb5\\xc4\\xc4\\xa3\\xbf\\xe9\\xa1\\xa3
第二行的ServerName如果不修改会报一个告警,不过似乎影响不大。
修改配置文件之后,通过“httpd\\Apache24\\bin\\httpd.exe -t”来查看配置是否有问题,如果没有则继续执行“httpd\\Apache24\\bin\\httpd.exe -k install -n Apache”来安装Apache服务。正常安装之后(会报一个错“Errors reported here must be corrected before the service can be started.”,但是没有影响),通过“计算机管理”可以查看到服务:
如果不常用该服务,可以选择手动启动,然后点击这里的启动来开启服务,或者使用httpd\\Apache24\\bin\\ApacheMonitor.exe来开启服务:
之后就可以使用Apache了,在Web上输入localhost来打开Apache默认的网页:
这个网页对应的Apache目录在httpd\\Apache24\\htdocs,就是一个index.html文件,这也是因为在配置文件中默认的入口就是这个:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
以上就是Apache的基本配置。
Apache使用CGI
首先需要确认httpd\\Apache24\\conf\\htpd.conf中的配置项:
LoadModule cgi_module modules/mod_cgi.so
ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"
AddHandler cgi-script .cgi
上述的三个配置需要被打开(就是前面没有#)。
之后编写一个CGI,使用的是C++语言,代码如下:
#include <iostream>
using namespace std;
int main ()
{
cout << "Content-type:text/html\\r\\n\\r\\n";
cout << "<html>\\n";
cout << "<head>\\n";
cout << "<title>Hello World</title>\\n";
cout << "</head>\\n";
cout << "<body>\\n";
cout << "<h2>Hello World! I am a CGI</h2>\\n";
cout << "</body>\\n";
cout << "</html>\\n";
return 0;
}
将它编译成一个CGI,就是普通的编译,-o的时候设置文件名称为helloworld.cgi即可,之后在网页中输入http://localhost/cgi-bin/helloworld.cgi,显示的结果:
这只是一个测试,正常情况下是不会这样直接使用CGI的,之后的示例会更加符合实际的情况。这里修改httpd\\Apache24\\htdocs下的index.html文件:
<body>
<form name="form1" action="/cgi-bin/helloworld.cgi">
<table>
<tr>
<td><input type="submit" value="ClickMe"></td>
</tr>
</table>
</form>
</body>
然后再输入localhost打开网页:
点击该按钮,就会执行helloworld.cgi,得到跟上面示例一样的结果。以上是使用C++的例子,其实还可以使用其它的语言,比如Python,作为脚本语言会更方便,不过需要修改配置:
AddHandler cgi-script .cgi .py
就是增加了“.py”以表示支持Python。下面是一个示例:
#!C:\\Python27\\python.exe
print ("Content-type:text/html")
print ('')
print ('<html>')
print ('<head>')
print ('<title>Hello World</title>')
print ('</head>')
print ('<body>')
print ('<h2>Hello World! I am a python CGI!</h2>')
print ('</body>')
print ('</html>')
注意这里的第一句话是必须的,这是Python程序所在位置,需要根据实际的情况调整,最终的结果如下:
这里需要修改index.html中的如下代码,就可以启动Python的CGI了:
<form name="form1" action="/cgi-bin/helloworld.py">
以上就是使用CGI的一些方式,当然也还可以使用其它语言。这里的重点在于需要打印HTML规范的信息来作为显示。
以上是关于Windows下的Web前后端开发准备的主要内容,如果未能解决你的问题,请参考以下文章