Apache2.4建立虚拟目录:
此操作耗费了我半天,终于整出来了
这儿只写建立虚拟目录,建立虚拟主机自己百度、google吧
一般来说 我们新建的 html 文件是要放到一个自己的想要的目录里的
而在Apache2.4中,它有一个默认配置,使得默认应该把 html 文件放到 htdcos 中才能访问
将 html 文件放入默认的 htdcos 文件夹中
在浏览器输入 localhost/hello_get.html 即可访问
但是很多情况下,并不愿意放在那个默认目录下
所以要建立一个虚拟目录
首先我假设在Apache24目录下建立一个虚拟的 test 目录
即,我可以这样直接访问:localhost/test/hello_get.html
但是很不幸,如果不配置就会这样:
这是它无法找到虚拟目录的情况
所以我们要加一句话,在 conf 的 httpd.conf 配置文件中添加
Alias /test "E:\ahttpd-2.4.23-x86-vc14\Apache24\test"
第二个称为别名,也可以是其他值,主要是为了安全,如果改为ads 则访问的url就变了,即为:localhost/ads/hello_get.html
第三个是绝对地址,根据建立的虚拟目录来更改
重启服务就可以看到这样的结果
可以看到,这是说没有权限
所以还要加一些话语
而网上一般都是Apache2.2 的信息,而2.4不一样了
2.2的:
<Directory "E:\httpd-2.4.23-x86-vc14\Apache24\test">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
2.4的:
<Directory "E:\httpd-2.4.23-x86-vc14\Apache24\test">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
第一行引号里的是虚拟目录的绝对地址,一定要写对
如果2.4的用2.2的那么服务都打不开。。。
然后在重启服务试一试
成功!!!
忙活了半天啊!
再联系到 python
其中我的html文件时一个表单,经过submit 提交后
访问cgi-bin里的hello_get.py 文件
这体现了html 的 get
hello_get.html 代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset = "gb2312">
<title>text_get.html</title>
</head>
<body>
<form action = "/cgi-bin/hello_get.py" method = "get">
siti_name: <input type = "text" name = "name"><br/>
siti_url: <input type = "text" name = "url"> <br/>
<input type = "submit" value = "submit">
</form>
</body>
</html>
hello_get.py 代码如下:
#!E:\python\python.exe
import cgi, cgitb
form = cgi.FieldStorage()
site_name = form.getvalue('name')
site_url = form.getvalue('url')
print("Content-type:text/html")
print()
print("<html>")
print("<head>")
print("<meta charset = \"gb2312\">")
print("<title>text_get.py</title>")
print("</head>")
print("<body>")
print("<h2>%s : %s</h2>" % (site_name, site_url))
print("</body>")
print("</html>")
实验如下图所示:
输入并点击提交
得到结果:
更多精彩内容,尽在点击打开链接
下载配置Apache,请看点击打开链接