如何摆脱 laravel on wamp 中的公共路径

Posted

技术标签:

【中文标题】如何摆脱 laravel on wamp 中的公共路径【英文标题】:How to get rid of the public path in laravel on wamp 【发布时间】:2013-03-06 07:18:29 【问题描述】:

我有一个快速的问题。我第一次尝试使用 Laravel。为此,我正在使用 Wamp。而且我不知道这是否重要,但我在这个地址设置了 wamp 的 DocumentRoot :

DocumentRoot "C:\Users\Bebop\Documents\Site Internet/"

我在一个名为 Sites 的文件夹中为许多不同的网站使用 wamp。当我访问其中一个站点时,我会访问:localhost/Sites/thewebsite。所以我真正想要的只是摆脱 Laravel 网站路径中的公用文件夹。

目前我已经做到了:

更改 apache 的 httpd.conf 以包含 vhosts.conf :

包括 conf/extra/httpd-vhosts.conf

创建了一个新的虚拟主机并像这样配置目录:

DocumentRoot "C:/Users/Bebop/Documents/Site Internet/Sites/LaravelTest/public" 服务器名称站点/LaravelTest

选项索引 FollowSymLinks 允许覆盖所有 订单拒绝,允许 拒绝一切 允许来自 127.0.0.1

之后我在位于 C:\Windows\System32\drivers\etc 的文件中添加了一个新主机

127.0.0.1       localhost
127.0.0.1       Sites/LaravelTest

通过这样做,当我访问 localhost 时,我会被重定向到 Laravel 网站。但我想去 localhost/Sites/LaravelTest,因为现在我无法访问我所有的其他网站。

有人知道怎么做吗?

非常感谢您的帮助

【问题讨论】:

改为访问localhost/Sites/LaravelTest/public 我实际上并不关心访问公共,更多的是了解它是如何工作的问题 【参考方案1】:

假设你想访问你的 Laravel 站点:http://localhost/LaravelSite/

您可以在 httpd.conf 文件中使用别名:

Alias /LaravelSite/ "C:/Users/Bebop/Documents/Site Internet/Sites/LaravelTest/public/"
<Directory "C:/Users/Bebop/Documents/Site Internet/Sites/LaravelTest/public">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

或者,在命令提示符下创建一个符号链接:

mklink /D "C:\Users\Bebop\Documents\Site Internet\Sites\LaravelSite" "C:\Users\Bebop\Documents\Site Internet\Sites\LaravelTest\public"`

【讨论】:

非常感谢,它有帮助。我有最后一个问题。这是否意味着我不能在共享主机或共享主机上使用 Laravel,而我必须有一个专用主​​机才能使用它? 不,你可以在共​​享主机上使用 Laravel。我使用符号链接来做。 当我在带有 Laravel 的 Windows 上使用 mklink 时,我所有的 GET 请求都可以工作,但我在 POST 请求中得到 404。知道为什么吗? 您确定该问题与 mklink 有关吗?在使用 mklink 之前,您的 POST 请求是否正常工作,即 laravel/public/ 路径?

以上是关于如何摆脱 laravel on wamp 中的公共路径的主要内容,如果未能解决你的问题,请参考以下文章

如何在本地使用 wamp 时摆脱 payum“SSL 证书问题:无法获取本地颁发者证书”错误

如何摆脱 v-on 处理程序中的错误:“TypeError:_vm.myFcn 不是函数”?

我如何使用Wamp运行laravel / vue Web应用程序?

在 laravel 中更新时如何删除公共/文件夹中的多个图像?

Laravel:如何路由到公共文件

如何显示来自Laravel的公共/存储/图像中的图像