VestaCP,  Linux

Fixing VestaCP open_basedir error

So, this. This has been a pain in the ass for EVER. Every time I install VestaCP, I have to fix this before doing anything else with my code.

This issue wasn’t there when I started using VestaCP. Then came an update. Yeah, you get my point. ????

I know it’s good for security. But still it’s a pain. So here’s how to get stuff working.

Please replace the following things with yours in my commands.

  • User: admin
  • Domain: example.com
  • Text-Editor: nano
  • Folder I want include files from: /home/%user%/web/%domain%/project
  1. Change directory to your VestaCP user’s web config folder
    1
    cd /home/admin/conf/web
  2. List files
    1
    ls -la

    You should see some files like

    1
    2
    example.com.httpd.conf
    example.com.nginx.conf
  3. Open up ‘example.com.httpd.conf‘ in a text editor
    Content will be similar to the follwing

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <VirtualHost ***.***.***.***:****>
        ServerName example.com
        ServerAlias www.example.com
        ServerAdmin info@example.com
        DocumentRoot /home/admin/web/example.com/public_html
        ScriptAlias /cgi-bin/ /home/admin/web/example.com/cgi-bin/
        Alias /vstats/ /home/admin/web/example.com/stats/
        Alias /error/ /home/admin/web/example.com/document_errors/
        #SuexecUserGroup admin admin
        CustomLog /var/log/httpd/domains/example.com.bytes bytes
        CustomLog /var/log/httpd/domains/example.com.log combined
        ErrorLog /var/log/httpd/domains/example.com.error.log
        <Directory /home/admin/web/example.com/public_html>
            AllowOverride All
            Options +Includes -Indexes +ExecCGI
            php_admin_value open_basedir /home/admin/web/example.com/public_html:/home/admin/tmp
            php_admin_value upload_tmp_dir /home/admin/tmp
            php_admin_value session.save_path /home/admin/tmp
        </Directory>
        <Directory /home/admin/web/example.com/stats>
            AllowOverride All
        </Directory>
        <IfModule mod_ruid2.c>
            RMode config
            RUidGid admin admin
            RGroups apache
        </IfModule>
        <IfModule itk.c>
            AssignUserID admin admin
        </IfModule>
        IncludeOptional /home/admin/conf/web/httpd.example.com.conf*
    </VirtualHost>
  4. Append the folder you want to ‘php_admin_value open_basedir‘ like the following example
    1
    php_admin_value open_basedir /home/admin/web/example.com/public_html:/home/admin/tmp:/home/admin/web/example.com/project
  5. Save and quit the file
  6. Restart Apache Server
    You could use the VestaCP interface to restart the Apache Server OR use the following command

    1
    service httpd restart

Cheers!

Nguồn

Tui là jamesblackvn!

Gửi phản hồi

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.