Доступ XAMPP запрещен

Я только что загрузил последнюю версию XAMPP с версией PHP 7.2.4. Я сделал очень простую проверку PHP для HTML-формы, и когда я нажимаю «Отправить», появляется следующее:

Доступ запрещен! У вас нет прав доступа к запрошенному объекту. Он либо защищен от чтения, либо недоступен для чтения сервером.

Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру.

Ошибка 403 локальный хост Apache/2.4.33 (Win32) OpenSSL/1.1.0g PHP/7.2.4

Я не знаю, в чем проблема, поскольку я пытался изменить Require none на Require all granted.

Пожалуйста помоги!


person Zac Cotterell    schedule 26.04.2018    source источник


Ответы (3)


Я столкнулся с этой проблемой и обнаружил, что ссылка на локальный хост не настроена в httpd_vhosts.conf. Поэтому я добавил эту строку в нижнюю часть httpd_vhosts.conf.

<VirtualHost *:80>
    DocumentRoot "E:/xampp/htdocs"
    ServerName localhost
</VirtualHost>
person andread    schedule 14.06.2018
comment
после внесения этих изменений проверьте его в режиме инкогнито - person saber tabatabaee yazdi; 01.01.2020

Ну, вероятно, это должно происходить из-за того, что в вашем xamp vhost не настроена ссылка localhost, попробуйте найти файл конфигурации vhosts и добавить туда такой же. Просто добавьте этот блок кода, сделав соответствующие изменения пути до вашего репозитория, чтобы вы могли получить доступ к локальному хосту:

# Virtual Hosts
#
<VirtualHost *:80>
  ServerName localhost
  ServerAlias localhost
  DocumentRoot "${INSTALL_DIR}/www"
  <Directory "${INSTALL_DIR}/www/">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
  </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "C:\ecommerce"
    ServerName www.hcodecommerce.com.br
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
<Directory "C:\ecommerce">
        Require all granted

        RewriteEngine On

        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^ index.php [QSA,L]
	</Directory>
</VirtualHost>

person Arthur Alves    schedule 26.04.2018
comment
Я скопировал этот код в файл acpache\conf\httpd.conf и изменил каталоги файлов, а не Apache даже не работает, и он показывает эту ошибку [mpm_winnt:notice] [pid 3336:tid 584] AH00354: Child: Starting 150 рабочих потоков.` - person Zac Cotterell; 28.04.2018
comment
Требовать все предоставленные RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [QSA,L] Это сработало для меня. Спасибо - person adeel ahmad; 22.02.2020

По умолчанию в httpd.conf вся ваша системная директория "/" защищена и доступ к ней запрещен.

в httpd.conf:

# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other 
# <Directory> blocks below.
#
<Directory />
    AllowOverride none
    Require all denied
</Directory>

Добавьте приведенное ниже дополнительное под вышеуказанным

<Directory /home>
   Options +Indexes +Includes +FollowSymLinks +MultiViews
   AllowOverride All
   Require local
</Directory>

Измените /home на общедоступный каталог размещенной установки - например. /projects или /devsite.local и т.д...

Дополнительную информацию об Apache см. здесь: https://httpd.apache.org/docs/current/mod/core.html#directory

«Параметры» — это типичные директивы .htaccess — меняйте по мере необходимости.

«AllowOverride All» дает доступ к папке /home и всему, что в ней

«Требовать локальный» гарантирует, что только localhost/127.0.0.1 имеет доступ к папке и файлам в /home

Надеюсь, это поможет: D

person streetsurfer    schedule 01.02.2020