在ubuntu下配置apache运行python脚本

2008-12-05 
 
常用的简单命令
sudo apt-get remove --purge apache apache2 (彻底删除)
 
sudo /etc/init.d/apache2 restart
sudo /etc/init.d/apache2 start
sudo /etc/init.d/apache2 stop
 
sudo makedir /home/htdocs
sudo chmod 777 /home/htdocs 生成网站目录,并修改权限
 
ubuntu下apache的配置文件一般放在/etc/apache2/这个目录下,与windows不同的是在这里配置文件被分成几部分,主要有apache2.conf, httpd.conf, sites-available/default几个
----------------------------------------------------------
主配置文件 apache2.conf,基本不用修改,
在该文件中我们可以看到有这么一行内容: Include /etc/apache2/sites-enabled/[^.#]* 
这行的意思表明该文件包含了 /etc/apache2/sites-enabled/ 目录中文件名不含 "." 或 "#" 这两个字符的所有文件。而当我们列出该目录的文件时,发现只有一个 000-default 的软链接文件,实际连接的是 /etc/apache2/sites-available 目录中的 default 文件,不难看出该文件的文件名中并不包含 "." 或 "#"。所以这个文件当然是要被配置文件 apache2.conf 所包含的了。打开该文件,发现它其实是一个虚拟主机的配置文件,不过由于该文件中的虚拟主机为 *,所以它实际上是一个通用配置文件。
 
sites-available/default:
* NameVirtualHost *:表示我们要做的是一个基于名称的虚拟主机
* <VirtualHost *> 和 </VirtualHost>:表示在其中的是一个虚拟主机的配置
* ServerName :设置虚拟主机的域名
* ServerAdmin [email=webmaster@gmail.com][color=#0000ff]webmaster@gmail.com[/color][/email]:设置该虚拟主机网管员的邮件
* DocumentRoot /var/www/:设置该虚拟主机的主目录路径
* ErrorLog /var/log/apache2/error.log:设置该虚拟主机的出错信息
* CustomLog /var/log/apache2/access.log combined:设置该虚拟主机的访问信息 
 
httpd.conf 用户的配置
添加 
DirectoryIndex index.html index.html.var index.htm
AddType text/html .htm .html .py 
AddHandler cgi-script .cgi .py
 
测试配置成功与否
 
保存一个如下内容的文件,比如命名为 helloworld.py 文件到定义的cgi文件夹中。
 
代码:
#!/usr/bin/python
print "Content-type: text/html\n\n"
print "Hello, World."
 
然后赋予可执行权限
 
代码:
sudo chmod a+x helloworld.py
 
 
最后重启一下apache2
 
代码:
sudo /etc/init.d/apache2 restart
 
 
在浏览器地址栏里输入:http://localhost/cgi-bin/helloworld.py
,看到了Hello,World. 至此我们大功告成。
posted @ 2014-01-01 10:52  linux,dev  阅读(528)  评论(0编辑  收藏  举报