760176104 发表于 2018-11-20 06:06:34

Apache基本使用 ( 基于discuz )

  (1)Apache用户认证

  编辑虚拟主机配置文件
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf  修改增加规则如下

#    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/data/www"
    ServerName www.aaa.com
    ServerAlias www.bbb.com
#    ErrorLog "logs/dummy-host.example.com-error_log"
#    CustomLog "logs/dummy-host.example.com-access_log" common
   
      AllowOverride AuthConfig
      AuthName "aaaaaa"
      AuthType Basic
      AuthUserFile /data/.htpasswd
      require valid-user
   
  针对/data/www/abc/目录 authuserfile:存放用户名,密码的文件 authname:提示信息
  创建密码文件
/usr/local/apache2/bin/htpasswd -c /data/.htpasswd user1  (再创建用户,不用 -c 用的话会覆盖文件)
  访问/data/www/abc下文件需要键入用户名,密码

  

  

  (2)禁止除自己域名之外的域名解析到自己ip访问以及ip访问
  修改虚拟hosts主机文件
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
    DocumentRoot "/tmp/123"
    ServerName 1111111.com
  增加如上规则,其中创建/tmp/123/文件夹,更改权限为600,重启服务
  

  

  (3)域名主次设定(301跳转)

  301 永久重定向 302 临时重定向跳转

修改虚拟hosts主机文件
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf  增加模块

#    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/data/www"
    ServerName www.aaa.com
    ServerAlias
    ServerAlias www.ccc.com
#    ErrorLog "logs/dummy-host.example.com-error_log"
#    CustomLog "logs/dummy-host.example.com-access_log" common
   
      RewriteEngine on
      RewriteCond %{HTTP_HOST} ^
      RewriteCond %{HTTP_HOST} ^www.ccc.com$
      RewriteRule ^/(.*)$ http://www.aaa.com/$1
   
  把bbb.com跳到aaa.com 把bbb.com/之后的部分作为变量,打包用$1标记写到aaa.com/后边.
  RewriteCond :跳转条件 RewriteRule:跳转规则
  多个次域名(多个跳转条件中用 OR 连接)
  

  

  




页: [1]
查看完整版本: Apache基本使用 ( 基于discuz )