环境:
ubuntu18.04apache2 apache 安装
sudo apt install apache2
查看 apache 状态
sudo systemctl status apache2
重启 apache
sudo systemctl restart apache2apache 配置
https://blog.csdn.net/yudelian/article/details/105200625
共需要修改两个文件
/etc/apache2/sites-available/000-default.conf/etc/apache2/apache2.conf
注意 修改配置完成后要重启apache2生效设置
目标 可以直接在web访问 /home/newftpuser 文件下的所有文件
设置工作目录在/etc/apache2/sites-available/000-default.conf中修改documentRoot 的目录至你想要的目录
我这里的目录是 /home/newftpuser
documentRoot /home/newftpuser
此时,可以 重启 apache,重新查看网页,也许会出现
Forbidden You don’t have permission to access /dir/ on this server
那么你需要解决 权限问题
解决权限问题https://askubuntu.com/questions/292968/apache2-forbidden-you-dont-have-permission-to-access-dir-on-this-server
在文件/etc/apache2/sites-available/000-default.conf 中添加(其实在/etc/apache2/apache2.conf 中添加也一样)(我这里选000-default.conf)
Options Indexes FollowSymlinks AllowOverride None Require all granted
apache 访问 好像是用 www-data 这个用户访问的,我们在 shell 中输入以下命令,让www-data 可以被访问到
# 添加已有用户到 www-data 用户组, sudo gpasswd -awww-data # 我这里是用户是 newftpuser 所以 sudo gpasswd -a newftpuser www-data # /home/newftpuser 修改成你自己想要的文件目录 sudo chown -R www-data:www-data /home/newftpuser sudo chmod -R g+rw /home/newftpuser
记得修改完重启 apache2
apache 文件目录 中文乱码https://cloud.tencent.com/developer/article/1430070
如果目录乱码请调整,否则请跳过
因为我用的是ftp 文件主要是从 windows传过来的 ,中文文件出现了乱码我这边需要调整成 GB2312
在文件 /etc/apache2/sites-available/000-default.conf 中添加(其实在/etc/apache2/apache2.conf 中添加也一样)(我这里选000-default.conf)
IndexOptions Charset=GB2312
记得修改完重启 apache2
Apache 文件目录访问添加密码核心还是改 Directory
在此之前 我们先通过htpasswd命令在 shell 创建一个登陆账号和密码
sudo htpasswd -c/.htpasswd # 这里我用的是(admin 是账户名,根据需要修改) sudo htpasswd -c /home/hyaline/.htpasswd admin # 后面会让你输入两边密码
修改Directory,我这是在 000-default.conf
ftp 上传的文件不在web显示Options Indexes FollowSymlinks AllowOverride None AuthType basic AuthName "Authorization" AuthUserFile /home/hyaline/.htpasswd Require valid-user
修改/etc/vsftpd.conf 中的 local_umask,他和我们 chmod 时的 数字效果是反过来的 例如 local_umask默认是077 翻译成 chmod时的 效果就是 700 就是除了 owner 有所有权限,其他都没有权限,这里我们用 022 也就是 翻译成 chmod时的 效果就是 755 就是让 group用户 和 其他用户拥有读和写的权利
# Default umask for local users is 077. You may wish to change this to 022, # if your users expect that (022 is used by most other ftpd's) local_umask=022添加完成后的文件(000-default.conf)
添加完之后我的是这个样子 我只修改了 000-default.conf



