你的位置:首页 > 操作系统

[操作系统]ubuntu下apache2 安装 配置 卸载 CGI设置 SSL设置


一、安装、卸载apache2
     apache2可直接用命令安装
          sudo apt-get install apache2
     卸载比较麻烦,必须卸干净,否则会影响apache2再安装
     (1) 
          sudo apt-get --purge remove apache2
          sudo apt-get --purge remove apache2.2-common
          sudo apt-get autoremove
 
     (2) (关键一步)找到没有删除掉的配置文件,一并删除
          sudo find  /etc -name "*apache*" -exec  rm -rf {} \;
          sudo rm -rf /var/www
     开启/重启apache2服务
          service apache2 start/restart
          sudo /etc/init.d/apache2 start/restart
 
二、配置文件
     严格来说,apache2的配置文件是/etc/apache2/apache2.conf apache先加载apache2.conf,然后根据apache2.conf里的Include指令载入其他配置文件。
     动态模块的配置
          Include mods-enabled/*.load
          Include mods-enabled/*.conf
     用户自己的配置
          Include httpd.conf
     端口监听的配置
          Include ports.conf
     一般性的配置语句片断
          Include conf.d/
     虚拟主机的配置指令
          Include sites-enabled/
     ubuntu下,web的根目录是在/var/www,设置是在/etc/apache2/sites-enabled/000-default中
    
      DocumentRoot /var/www
      <Directory />
     Options FollowSymLinks +ExecCGI
     AllowOverride None
      </Directory>
     <Directory /var/www/>
     Options Indexes FollowSymLinks MultiViews
     AllowOverride None
     Order allow,deny
     allow from all
     </Directory>
 
     web的默认主页是在/etc/apache2/mods-enabled/dir.conf里
          DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
 
     XXX-enabled 和XXX-available目录,XXX-enabled中放的是指向XXX-available中相应文件的符号链接,不过虽然如此,只有用ln命令把XXX-enabled中的文件链接到XXX-enabled中才能起作用。
 
三、CGI 设置
     在/var/www下创建一个目录 cgi-bin,作为cgi程序存放的地点,然后修改配置文件/etc/apache2/sites-enabled/000-default
     将
          ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
          <Directory "/usr/lib/cgi-bin/">
          AllowOverride None
          Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
          Order allow,deny
          Allow from all
          </Directory>
     修改为:
          ScriptAlias /cgi-bin/ /var/www/cgi-bin/
          <Directory "/var/www/cgi-bin">
          AllowOverride None
          Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
          Order allow,deny
          Allow from all
          AddHandler cgi-script cgi
          </Directory>
     重启apache服务
     cgi程序的权限必须是755(可运行)。
四、SSL设置
     创建SSL目录
          sudo mkdir /etc/apache2/ssl
     创建自签名凭证,内容随便填
          sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
     开启SSL 模块
          a2enmod ssl
     编辑/etc/apache2/sites-enabled/default-ssl.conf
          ServerAdmin webmaster@localhost
          ServerName www.unixmen.com:443
 
          SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.crt
          SSLCertificateKeyFile /etc/apache2/ssl/apache.key
     启动虚拟主机
          a2ensite default-ssl
     重启apache
          sudo service apache2 restart