ubuntu部署http服务器

(127) 2024-03-26 11:01:01

一、安装apache2

$ sudo apt install -y apache2

二、配置环境

默认是80端口,防止冲突自定义端口:8001

1.修改 /etc/apache2/ports.conf文件j监听端口

Listen 8001  ## 其它行不变

2.修改/etc/apache2/sites-enabled/000-default.conf文件端口与访问目录

<VirtualHost *:8001> ## 其他行不变

DocumentRoot /var/www/html   ## 浏览器访问目录

3.删除html网页文件

$ sudo rm /var/www/html/index.html 
ps:不删除,登录 http://{hostIP}:8001会进入网页

4.重启服务

$ sudo /etc/init.d/apache2 restart 

三、测试

1.测试访问:登录 http://{hostIP}:8001

> 成功访问到/var/www/html/目录下文件

2.测试下载

> 点击网页上文件,成功下载

四、常用命令

/etc/init.d/apache2 -h    查看帮助文档

/etc/init.d/apache2 start :	启动apache服务
/etc/init.d/apache2 stop :	停止apache服务
/etc/init.d/apache2 graceful-stop :优雅地停止apache服务。等任务结束,完成一些扫尾工作后再停止。
/etc/init.d/apache2 restart :	重启apache服务
/etc/init.d/apache2 reload :	重新加载配置文件
/etc/init.d/apache2 force-reload :强制重新加载配置文件

五、设置登录密码

  1. 安装apache-utils

    sudo apt-get update
    sudo apt-get install apache2-utils
    
  2. 生成 .htpasswd 文件
    推荐在网站根目录下生成.htpasswd 文件保存密码

    touch /var/www/html/网站根目录/.htpasswd             # 生成 .htpasswd 文件
    sudo htpasswd -c /var/www/html/网站根目录/.htpasswd  验证用户名
    

    验证用户名需要自行修改,重复两次后完成密码生成

  3. 使能 .htaccess 文件

    sudo vi /etc/apache2/apache2.conf
    

    找到以下内容

    <Directory /var/www/>
            Options Indexes FollowSymlinks
            AllowOverride all
            Require all granted
    </Directory>
    

    确认 AllowOverride all 这行是这样就可以了保存后输入以下命令

    sudo service apache2 restart    ## 重启apache2
    
  4. 修改.htaccess 文件, 没有添加
    在/var/www/html/.htaccess 文件的最后加入如下内容:

    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /var/www/html/网站根目录/.htpasswd
    Require valid-user
    
THE END

发表回复