403-forbidden - centos7 Apache 网站出现403无法访问

【字号: 日期:2022-08-13浏览:36作者:雯心

问题描述

系统

我使用的是centos7,安装Apache 2.4.x,并且还安装了vsftpd,配置了用户 xxx.com根目录 /var/virtual/xxx.com/public_html,用户目录 /var/virtual/xxx.com

vsftpd

当我设置 /var/virtual/xxx.com/public_html 的所有者为 Apache的时候,可以访问。但vsftpd无法登录,改为 xxx.com 这个用户,vsftpd可以登录,Apache访问出现403提示。

命令过程

[root@localhost virtual]# mkdir -p /var/virtual/xxx.com/{public_html,logs,backup}[root@localhost virtual]# useradd xxx.com -g apache -d /var/virtual/xxx.com[root@localhost virtual]# chown xxx.com: -R /var/virtual/xxx.com[root@localhost virtual]# ls -l /var/virtual/xxx.comtotal 12drwxr-xr-x 2 xxx.com apache 4096 Sep 9 00:50 backupdrwxr-xr-x 2 xxx.com apache 4096 Sep 9 00:51 logsdrwxr-xr-x 2 xxx.com apache 4096 Sep 9 09:50 public_html[root@localhost virtual]# ftp localhostTrying ::1...ftp: connect to address ::1Connection refusedTrying 127.0.0.1...Connected to localhost (127.0.0.1).220 (vsFTPd 3.0.2)Name (localhost:root): xxx.com331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (127,0,0,1,34,100).150 Here comes the directory listing.drwxr-xr-x 2 1000 48 4096 Sep 08 16:50 backupdrwxr-xr-x 2 1000 48 4096 Sep 08 16:51 logsdrwxr-xr-x 2 1000 48 4096 Sep 09 01:50 public_html226 Directory send OK.ftp> exit221 Goodbye.[root@localhost virtual]#[root@localhost virtual]# sestatusSELinux status: disabled[root@localhost virtual]# unameLinux[root@localhost virtual]# uname -aLinux localhost.localdomain 3.15.4-x86_64-linode45 #1 SMP Mon Jul 7 08:42:36 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux[root@localhost virtual]#备注

1)selinux已经关闭2)两个用户 xxx.com 和 apache都是同一个用户组 apache用户组 GID = 48

[root@localhost ~]# grep xxx.com /etc/passwdxxx.com:x:1000:48::/var/virtual/xxx.com:/bin/bash[root@localhost ~]# grep apache /etc/passwdapache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin[root@localhost ~]#

问题解答

回答1:

因为你修改了 DocumentRoot 所以应该确保4个目录/var/virtual/xxx.com/public_html apache都有访问权限

chmod o+x /varchmod o+x /var/virturlchmod o+x /var/virturl/xxx.comchmod o+x /var/virturl/xxx.com/public_html回答2:

建议放弃陈旧粗糙的ftp,可以通过git部署,或者sftp。

回答3:

ftp配置的问题?

回答4:

好多年不用ftp了,基本上正在推广git部署。

回答5:chcon -R -t httpd_user_content_t public_html/ <path to web files>chcon -R -t httpd_sys_content_t <path to web files>
相关文章: