Permissions issues making me crazy adding a new wordpress site

Discussion in 'Server Operation' started by isn, Jun 24, 2018.

  1. isn

    isn Member

    Version 3.1.2
    site kicks over in this url to apache test page:
    http://linuxauthority.com
    No log entries appear on server logs or /var/kog/httpd central log files.

    http://linuxauthority.com/index.php triggers the error

    wordpress configuration was working on another test restored it and changed ownership

    Ran the following code from /var/www/linuxauthority.com
    1014 #!/bin/sh
    1015 find $PWD -type d -exec chmod 755 {} \;
    1016 find $PWD -type f -exec chmod 644 {} \;
    1017 systemctl restart httpd
    1018 echo $?
    1019 systemctl status httpd
    Centos 7.4

    on ispconfig website screen
    button set on are
    cgi
    ssl
    SuEXEC
    Own Error Documents
    active is checked

    Test page renamed to oldindex.html works
    renamed to steven.txt and restarted httpd

    [Sun Jun 24 14:18:14.456944 2018] [core:error] [pid 17539] (13)Permission denied: [client <ip address removed>:61989] AH00035: access to /php-cgi/index.php denied (filesystem path '/var/www/php-cgi-scripts/web80/php-cgi-starter') because search permissions are missing on a component of the path

    [root@instance-4 web]# cat /etc/httpd/conf/sites-enabled/100-linuxauthority.com.vhost
    <Directory /var/www/linuxauthority.com>
    AllowOverride None
    Require all denied
    </Directory>
    <VirtualHost *:80>
    DocumentRoot /var/www/clients/client2/web80/web
    ServerName linuxauthority.com
    ServerAlias www.linuxauthority.com
    ServerAdmin [email protected]

    ErrorLog /var/log/ispconfig/httpd/linuxauthority.com/error.log
    Alias /error/ "/var/www/linuxauthority.com/web/error/"
    ErrorDocument 400 /error/400.html
    ErrorDocument 401 /error/401.html
    ErrorDocument 403 /error/403.html
    ErrorDocument 404 /error/404.html
    ErrorDocument 405 /error/405.html
    ErrorDocument 500 /error/500.html
    ErrorDocument 502 /error/502.html
    ErrorDocument 503 /error/503.html


    <IfModule mod_ssl.c>
    </IfModule>


    <Directory /var/www/linuxauthority.com/web>
    # Clear PHP settings of this website
    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
    SetHandler None
    </FilesMatch>
    Options +FollowSymLinks
    AllowOverride All
    Require all granted


    # ssi enabled
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
    Options +Includes
    </Directory>

    <Directory /var/www/clients/client2/web80/web>
    # Clear PHP settings of this website
    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
    SetHandler None
    </FilesMatch>
    Options +FollowSymLinks

    AllowOverride All
    Require all granted



    # ssi enabled
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
    Options +Includes
    </Directory>
    # cgi enabled
    <Directory /var/www/clients/client2/web80/cgi-bin>
    Require all granted
    </Directory>
    ScriptAlias /cgi-bin/ /var/www/clients/client2/web80/cgi-bin/
    <FilesMatch "\.(cgi|pl)$">
    SetHandler cgi-script
    </FilesMatch>

    # suexec enabled

    <IfModule mod_suexec.c>
    SuexecUserGroup web80 client2
    </IfModule>

    # php as cgi enabled

    ScriptAlias /php-cgi /var/www/php-cgi-scripts/web80/php-cgi-starter
    Action php-cgi /php-cgi
    <Directory /var/www/linuxauthority.com/web>

    <FilesMatch "\.php[345]?$">
    SetHandler php-cgi
    </FilesMatch>
    </Directory>
    <Directory /var/www/clients/client2/web80/web>
    <FilesMatch "\.php[345]?$">
    SetHandler php-cgi
    </FilesMatch>
    </Directory>
    <Directory /var/www/php-cgi-scripts/web80/>
    Require all granted
    </Directory>

    # add support for apache mpm_itk
    <IfModule mpm_itk_module>
    AssignUserId web80 client2
    </IfModule>
    <IfModule mod_dav_fs.c>

    # Do not execute PHP files in webdav directory
    <Directory /var/www/clients/client2/web80/webdav>
    <ifModule mod_security2.c>
    SecRuleRemoveById 960015
    SecRuleRemoveById 960032
    </ifModule>
    <FilesMatch "\.ph(p3?|tml)$">
    SetHandler None
    </FilesMatch>
    </Directory>
    DavLockDB /var/www/clients/client2/web80/tmp/DavLock
    # DO NOT REMOVE THE COMMENTS!
    # IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
    # WEBDAV BEGIN
    # WEBDAV END
    </IfModule>
    </VirtualHost>

    [root@instance-4 web]# httpd -V
    AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/httpd/conf/httpd.conf:356
    Server version: Apache/2.4.6 (CentOS)
    Server built: Oct 19 2017 20:39:16
    Server's Module Magic Number: 20120211:24
    Server loaded: APR 1.4.8, APR-UTIL 1.5.2
    Compiled using: APR 1.4.8, APR-UTIL 1.5.2
    Architecture: 64-bit
    Server MPM: prefork
    threaded: no
    forked: yes (variable process count)
    Server compiled with....
    -D APR_HAS_SENDFILE
    -D APR_HAS_MMAP
    -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
    -D APR_USE_SYSVSEM_SERIALIZE
    -D APR_USE_PTHREAD_SERIALIZE
    -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
    -D APR_HAS_OTHER_CHILD
    -D AP_HAVE_RELIABLE_PIPED_LOGS
    -D DYNAMIC_MODULE_LIMIT=256
    -D HTTPD_ROOT="/etc/httpd"
    -D SUEXEC_BIN="/usr/sbin/suexec"
    -D DEFAULT_PIDLOG="/run/httpd/httpd.pid"
    -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
    -D DEFAULT_ERRORLOG="logs/error_log"
    -D AP_TYPES_CONFIG_FILE="conf/mime.types"
    -D SERVER_CONFIG_FILE="conf/httpd.conf"

    [root@instance-4 web]# httpd -S | egrep "tehillim|linux"
    AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/httpd/conf/httpd.conf:356
    port 80 namevhost linuxauthority.com (/etc/httpd/conf/sites-enabled/100-linuxauthority.com.vhost:7)
    alias www.linuxauthority.com
    port 80 namevhost tehillimsongs.com (/etc/httpd/conf/sites-enabled/100-tehillimsongs.com.vhost:7)
    alias www.tehillimsongs.com
    [root@instance-4 web]#

    tehillimsongs works linuxauthority does not the only differences between these 2 files are path an domain name.
     
  2. Taleman

    Taleman Well-Known Member HowtoForge Supporter

  3. isn

    isn Member

    Similar:
    [root@instance-4 web]# id web80
    uid=5060(web80) gid=5004(ispconfig) groups=5004(ispconfig),5019(sshusers)
    [root@instance-4 web]# pwd
    /var/www/linuxauthority.com/web
    [root@instance-4 web]# ll
    total 159596

    drwxr-xr-x 2 web80 ispconfig 126 Jun 24 03:49 error
    -rwxr-xr-x 1 web80 ispconfig 1406 Jul 22 2011 favicon.ico
    -rwxr-xr-x 1 web80 ispconfig 105 Nov 15 2011 index.php
    -rwxr-xr-x 1 root root 163398539 Jun 24 04:33 linuxauthority.tar.gz
    -rwxr-xr-x 1 web80 ispconfig 34 Jul 22 2011 robots.txt
    drwxr-xr-x 2 web80 ispconfig 4096 Jun 24 13:39 stats
    -rwxr-xr-x 1 web80 ispconfig 1861 Jun 24 04:22 steven.txt
    drwxr-xr-x 5 web80 ispconfig 4096 Jan 13 2016 wordpress
    [root@instance-4 web]#
     
  4. isn

    isn Member

    index.html works. Avoids the failover to apache default page. index.php does not work seemingly because php-cgi is forbidden.

    php problem?

    [Sun Jun 24 19:06:59.074683 2018] [core:error] [pid 15685] (13)Permission denied: [client :56164] AH00035: access to /php-cgi/wordpress/index.php denied (filesystem path '/var/www/php-cgi-scripts/web80/php-cgi-starter') because search permissions are missing on a component of the path

    [Sun Jun 24 19:06:59.075810 2018] [core:error] [pid 15645] (13)Permission denied: [client <ip removed for privacy>:56165] AH00035: access to /php-cgi/wordpress/wp-content/plugins/audio-link-player/player-js.php denied (filesystem path '/var/www/php-cgi-scripts/web80/php-cgi-starter') because search permissions are missing on a component of the path, referer: http://www.linuxauthority.com/wordpress/
     
    Last edited: Jun 24, 2018
  5. isn

    isn Member

    Switched the sites PHP choice to morphs and it suddenly works.

    I don't use mod-php on ANY other sites.

    Recently upgraded to ispconfig3 v 3.1.2

     
  6. till

    till Super Moderator Staff Member ISPConfig Developer

    Maybe you changed the permissions on one of the directories. Please post the output of:

    ls -la /var/www/php-cgi-scripts/web80
    ls -la /var/www/php-cgi-scripts
    ls -la /var/www
    ls -la /var

    and are you really using ISPConfig 3.1.2? The current version is 3.1.12.
     
  7. till

    till Super Moderator Staff Member ISPConfig Developer

    And as a side note, do not do this on an ISPConfig server! You damage the directory permissions when you do that.
     
    isn likes this.
  8. isn

    isn Member

    Correct you are Sir
    ISPConfig Version: 3.1.12
    [root@instance-4 ssl]# ls -la /var/www/php-cgi-scripts/web80

    total 8

    dr-xr-x--- 2 web80 client0 28 Jun 24 19:29 .

    drwxr-xr-x. 23 root root 4096 Jun 24 19:22 ..

    -r-xr-x--- 1 web80 ispconfig 512 Jun 24 19:29 php-cgi-starter

    [root@instance-4 ssl]# ls -la /var/www/php-cgi-scripts

    total 8

    drwxr-xr-x. 23 root root 4096 Jun 24 19:22 .

    drwxr-xr-x 19 root root 4096 Jun 24 19:22 ..

    drwxr-xr-x. 2 ispconfig ispapps 28 Dec 20 2009 web1

    drwxr-xr-x. 2 5005 ispconfig 28 Dec 20 2009 web3

    drwxr-xr-x. 2 bsg21shell ispapps 28 Mar 2 2016 web31

    drwxr-xr-x. 2 5006 ispconfig 28 Dec 20 2009 web4

    drwxr-xr-x 2 web44 ispconfig 28 Jun 22 21:17 web44

    drwxr-xr-x. 2 itooldcsh client10 28 Nov 12 2011 web45

    drwxr-xr-x. 2 web47 ispconfig 28 May 7 2012 web47

    drwxr-xr-x. 2 web49 client12 28 Apr 11 2013 web50

    drwxr-xr-x. 2 web57 client5 28 May 18 2014 web57

    drwxr-xr-x 2 web62 ispconfig 28 Jun 22 20:21 web62

    drwxr-xr-x 2 root ispconfig 28 Jun 24 02:16 web63

    drwxr-xr-x 2 root client1 28 Jun 13 2017 web67

    drwxr-xr-x 2 web68 ispconfig 28 Jun 22 17:47 web68

    drwxr-xr-x 2 web69 client11 28 Jun 18 2017 web69

    drwxr-xr-x. 2 web7 client4 28 Apr 20 2015 web7

    drwxr-xr-x 2 web73 ispconfig 28 Jun 22 19:58 web73

    drwxr-xr-x 2 web74 client1 28 Jun 19 2017 web74

    drwxr-xr-x 2 web75 ispconfig 28 Jun 22 20:16 web75

    dr-xr-x--- 2 web80 ispconfig 28 Jun 24 04:21 web76

    dr-xr-x--- 2 web80 client0 28 Jun 24 19:29 web80

    dr-xr-x--- 2 web82 ispconfig 28 Jun 24 19:22 web82

    [root@instance-4 ssl]# ls -la /var/www

    total 76

    drwxr-xr-x 19 root root 4096 Jun 24 19:22 .

    drwxr-xr-x. 28 root root 4096 Jun 24 15:03 ..

    drwxr-xr-x. 3 ispapps ispapps 74 Aug 31 2010 apps

    drwxrwxr-x. 9 root root 4096 Apr 9 2015 awstats

    drwxr-xr-x 8 root root 4096 Jun 5 2017 battlestarback

    lrwxrwxrwx 1 root root 31 Jun 13 2017 battlestarmercury.com -> /var/www/clients/client1/web67/

    lrwxrwxrwx 1 root root 31 Jun 13 2017 camelotapartments.biz -> /var/www/clients/client4/web66/

    drwxrwxr-x. 2 root root 4096 Jun 22 2011 cert

    drwxr-xr-x 2 root root 6 Apr 20 18:11 cgi-bin

    drwxrwxr-x. 16 root root 4096 Apr 8 2014 clients

    drwxr-xr-x. 4 root root 30 Jun 24 20:09 conf

    drwxr-xr-x. 3 root root 4096 Apr 7 2017 error

    lrwxrwxrwx. 1 root root 31 Dec 30 2011 hpuxadmin.com -> /var/www/clients/client2/web46/

    lrwxrwxrwx 1 root root 31 Jun 13 2017 hpuxconsulting.com -> /var/www/clients/client2/web62/

    lrwxrwxrwx. 1 root root 31 Dec 30 2011 hpuxengineer.com -> /var/www/clients/client2/web47/

    lrwxrwxrwx 1 root root 31 Jun 18 2017 hpux.ws -> /var/www/clients/client2/web68/

    drwxr-xr-x. 7 root root 69 Apr 20 18:11 html

    drwxr-xr-x. 3 root root 8192 Apr 7 2017 icons

    drwxr-xr-x. 4 invest 1500 4096 Nov 23 2017 invest

    lrwxrwxrwx 1 root root 31 Jun 19 2017 investmenttool.com -> /var/www/clients/client2/web73/

    lrwxrwxrwx 1 root root 31 Jun 19 2017 isnamerica.com -> /var/www/clients/client2/web75/

    lrwxrwxrwx 1 root root 34 Jun 13 2017 ispconfig -> /usr/local/ispconfig/interface/web

    lrwxrwxrwx 1 root root 32 Jun 18 2017 kaniele.com -> /var/www/clients/client11/web69/

    lrwxrwxrwx 1 root root 31 Jun 24 04:22 linuxauthority.com -> /var/www/clients/client2/web80/

    drwx------. 2 root root 6 Nov 18 2015 lost+found

    lrwxrwxrwx. 1 root root 31 May 18 2014 loweslaw.com -> /var/www/clients/client5/web57/

    drwxr-xr-x. 14 root root 4096 Nov 26 2014 manual

    lrwxrwxrwx. 1 root root 32 Apr 8 2013 mitzvadiscovery.com -> /var/www/clients/client12/web49/

    lrwxrwxrwx. 1 root root 32 Apr 11 2013 mitzvahdiscovery.com -> /var/www/clients/client12/web50/

    lrwxrwxrwx 1 root root 31 Jun 13 2017 myparents.website -> /var/www/clients/client2/web63/

    lrwxrwxrwx. 1 root root 32 Nov 12 2011 natursolbb.com -> /var/www/clients/client10/web45/

    lrwxrwxrwx. 1 root root 31 Aug 23 2011 newdatacloud.com -> /var/www/clients/client2/web44/

    drwxr-xr-x. 23 root root 4096 Jun 24 19:22 php-cgi-scripts

    drwxr-xr-x. 25 root root 4096 Jun 19 17:44 php-fcgi-scripts

    lrwxrwxrwx 1 root root 31 Jun 24 19:22 stevenprotter.com -> /var/www/clients/client2/web82/

    lrwxrwxrwx 1 root root 31 Jun 19 2017 tehillimsongs.com -> /var/www/clients/client1/web74/

    lrwxrwxrwx. 1 root root 30 Sep 2 2011 testdomain.com -> /var/www/clients/client0/web1/

    drwxr-xr-x. 2 webalizer root 12288 Jun 8 2017 usage

    lrwxrwxrwx. 1 root root 30 Dec 20 2009 woodridgeapartment.com -> /var/www/clients/client4/web7/

    drwxr-xr-x. 7 root root 4096 Jan 13 2016 wordpress

    lrwxrwxrwx. 1 root root 31 Sep 2 2011 yevkaland.com -> /var/www/clients/client1/web45/

    [root@instance-4 ssl]# ls -la /var

    total 52

    drwxr-xr-x. 28 root root 4096 Jun 24 15:03 .

    dr-xr-xr-x. 18 root root 4096 Jun 24 15:03 ..

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 adm

    drwxr-x--- 11 root root 4096 Jun 23 00:01 backup

    drwxr-xr-x. 8 root root 85 Apr 11 04:59 cache

    drwxr-xr-x. 3 root root 32 Apr 11 04:59 db

    drwxr-xr-x. 3 root root 17 Apr 11 04:59 empty

    drwxr-xr-x 2 root root 6 Dec 23 2015 ftp

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 games

    drwxr-xr-x 3 root root 20 Jun 22 17:18 git

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 gopher

    drwxr-xr-x. 3 root root 17 May 9 13:48 kerberos

    drwxr-xr-x. 53 root root 4096 Jun 24 15:18 lib

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 local

    lrwxrwxrwx. 1 root root 11 Feb 19 2016 lock -> ../run/lock

    drwxr-xr-x. 15 root root 4096 Apr 11 04:59 log

    drwxr-xr-x. 2 root root 6 Feb 24 2016 log.old

    lrwxrwxrwx 1 root root 10 Jun 24 15:03 mail -> spool/mail

    drwxr-x---. 7 root named 4096 Jun 24 15:19 named

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 nis

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 opt

    drwxr-xr-x. 2 root root 6 Apr 11 04:59 preserve
    lrwxrwxrwx. 1 root root 6 Feb 19 2016 run -> ../run
    drwxr-xr-x. 10 root root 4096 Apr 11 04:59 spool
    drwxr-xr-x 2 root root 6 Oct 17 2017 tempfs
    drwxrwxrwt. 6 root root 4096 Jun 25 14:14 tmp
    drwxr-xr-x 2 root root 6 Oct 17 2017 tmpfs
    -rw-r--r--. 1 root root 163 Mar 23 2017 .updated
    drwxr-xr-x. 3 root root 16 Feb 19 2016 var
    drwx------ 18 vmail vmail 4096 Jun 15 00:03 vmail
    drwxr-xr-x 19 root root 4096 Jun 24 19:22 www
    drwxr-xr-x. 2 root root 6 Apr 11 04:59 yp
    [root@instance-4 ssl]#
     
  9. isn

    isn Member

    Been there done that gotten the tee-shirt.

    I've been considering making three to owned portion of ispconfig chatter +i <filename>
     

Share This Page