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. 至此我们大功告成。