首頁  >  問答  >  主體

403-forbidden - centos7 Apache 網站出現403無法訪問

系統

我使用的是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.com total 12 drwxr-xr-x 2 xxx.com apache 4096 Sep 9 00:50 backup drwxr-xr-x 2 xxx.com apache 4096 Sep 9 00:51 logs drwxr-xr-x 2 xxx.com apache 4096 Sep 9 09:50 public_html [root@localhost virtual]# ftp localhost Trying ::1... ftp: connect to address ::1Connection refused Trying 127.0.0.1... Connected to localhost (127.0.0.1). 220 (vsFTPd 3.0.2) Name (localhost:root): xxx.com 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 227 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 backup drwxr-xr-x 2 1000 48 4096 Sep 08 16:51 logs drwxr-xr-x 2 1000 48 4096 Sep 09 01:50 public_html 226 Directory send OK. ftp> exit 221 Goodbye. [root@localhost virtual]# [root@localhost virtual]# sestatus SELinux status: disabled [root@localhost virtual]# uname Linux [root@localhost virtual]# uname -a Linux 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/passwd
xxx.com:x:1000:48::/var/virtual/xxx.com:/bin/bash
[root@localhost ~]# grep apache /etc/passwd
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
[root@localhost ~]#
我想大声告诉你我想大声告诉你2736 天前920

全部回覆(5)我來回復

  • 黄舟

    黄舟2017-04-25 09:03:30

    因為你修改了 DocumentRoot 所以應該確保4個目錄/var/virtual/xxx.com/public_html apache都有訪問權限

    chmod o+x /var

    chmod o+x /var/virturl

    chmod o+x /var/virturl/xxx.com

    chmod o+x /var/virturl/xxx.com/public_html

    回覆
    0
  • 習慣沉默

    習慣沉默2017-04-25 09:03:30

    建議放棄陳舊粗糙的ftp,可以透過git部署,或是sftp。

    回覆
    0
  • 怪我咯

    怪我咯2017-04-25 09:03:30

    ftp配置的問題?

    回覆
    0
  • 大家讲道理

    大家讲道理2017-04-25 09:03:30

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

    回覆
    0
  • 为情所困

    为情所困2017-04-25 09:03:30

    • chcon -R -t httpd_user_content_t public_html/ <path to web files>
    • chcon -R -t httpd_sys_content_t <path to web files>

    回覆
    0
  • 取消回覆