apache - 本地主机 xampp 上禁止 Laravel 访问

标签 apache laravel xampp laravel-artisan

我刚开始就卡住了。我已经安装了 laravel,当我运行 php artisan serv 命令时,会出现此(Laravel 开发服务器在 http://localhost:8000/ 上启动)行,但是当我通过浏览器(http://localhost:8000/)访问它时,会显示以下错误。

禁止访问! 您无权访问请求的对象。它要么是读保护的,要么是服务器不可读的。 如果您认为这是服务器错误,请联系网站管理员。 错误 403 本地主机 Apache/2.4.18 (Win32) OpenSSL/1.0.2e PHP/7.0.2

请帮帮我。任何帮助将不胜感激。我是 Laravel 的初学者。

最佳答案

按照以下步骤创建虚拟主机:

切换到您的 XAMPP 安装目录(通常为 C:\xampp)并使用您喜欢的文本编辑器打开 apache\conf\extra\子目录中的“httpd-vhosts.conf”和“httpd-xampp.conf”文件. 使用以下指令将这些行添加到两个文件中:

<VirtualHost *:80>
       DocumentRoot "C:\Users\Shivam\Desktop\laravel_project\blog"
       ServerName blog.dev
   <Directory "C:\Users\Shivam\Desktop\laravel_project\blog">
    Options Indexes FollowSymLinks MultiViews   
    AllowOverride all 
    Order Deny,Allow
    Allow from all
    Require all granted
  </Directory>  
</VirtualHost>

这包含两个虚拟主机配置 block :

第一个 block 是默认或后备虚拟主机,用于所有与后续 block 不匹配的请求。 第二个 block 设置一个名为 wordpress.localhost 的虚拟主机。 DocumentRoot 指令指定为该虚拟主机提供服务请求时使用的目录(在本例中为 WordPress 安装目录),而 ServerName 指令指定虚拟主机的自定义域名。

要添加更多虚拟主机,只需复制第二个虚拟主机 block 并根据您的要求修改端口号、DocumentRoot 和 ServerName 指令。例如,如果您想将 SSL 与您的自定义域名一起使用,您可以为端口 443 添加一个新的虚拟主机 block 。 如果您计划拥有大量配置非常相似的虚拟主机,请考虑对您的虚拟主机使用基于通配符的子域。

使用 XAMPP 控制面板重新启动 Apache 以使您的更改生效。

至此,您的虚拟主机已配置完毕。但是,如果您尝试浏览到 wordpress.localhost 域,您的浏览器将显示失败通知,因为该域在现实中并不存在。要解决此问题,需要将自定义域映射到本地 IP 地址。为此,打开文件 C:\windows\system32\drivers\etc\hosts 并向其中添加以下行:

127.0.0.1           blog.dev

这负责将 wordpress.localhost 域名映射到本地机器,其 IP 地址始终为 127.0.0.1

关于apache - 本地主机 xampp 上禁止 Laravel 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35245825/

相关文章:

apache - 复制服务器的 SSL 认证

apache - 如何禁用 Owncloud https 重定向?

apache - 为什么 WSGIScriptAlias 没有效果?

Laravel - 测试 api 时方法 Illuminate\Auth\RequestGuard::attempt 不存在

laravel - 如何在 Laravel 4 中实现 HMVC

apache - 从tomcat中找出自己的公共(public)地址

mysql - Laravel 查询生成器高级 wheres AND, OR

php - 使用带有复选框的 html post 函数

php - 臭名昭著的 Apache 错误 "Parent: child process exited with status 3221225477"

apache - 如何在我公司的代理后面设置本地 xampp