当前正在尝试在本地PC上设置Laravel项目。我在Windows主机文件中添加了主机名 127.0.0.1 localhost-smt 并编辑了我的Apache httpd-vhost.conf:

<VirtualHost *:80>
     ServerName localhost
     DocumentRoot "C:/xampp/htdocs/project1"
     <Directory "C:/xampp/htdocs/project1/">
         DirectoryIndex index.php
     </Directory>
 </VirtualHost>


<VirtualHost *:80>
    ServerName localhost-smt
    DocumentRoot "C:/xampp/htdocs/project1/smt/public"
    ErrorLog "logs/testseite-error.log"
    CustomLog "logs/testseite-access.log" common
    <Directory "C:/xampp/htdocs/project1/smt/">
    AllowOverride All
    Allow from All
    </Directory>
</VirtualHost>
我的Apache httpd.conf
DocumentRoot "C:/xampp/htdocs"
<Directory "C:/xampp/htdocs">
每次我连接到localhost-smt/home时,都会收到一个双重URL,例如 http://localhost-smt/127.0.0.1/home 。如果我从本地主机导航到公用文件夹并添加/home ,则会收到以下URL http://localhost/smt/public/127.0.0.1/smt/public/home
我尝试了许多不同的解决方案,但是到目前为止,它们都没有起作用。如果有人可以帮助我解决这个难题,我将不胜感激。

最佳答案

我不确定如何使用.conf文件执行此操作,但是使用Xampp时实现此目标的方式如下,显然,这样做将意味着撤消对Xampp的默认行为所做的所有操作,您已编辑的.conf文件。

  • 将名称解析添加到主机文件


  • 将以下.htaccess文件添加到项目目录的根目录(通常为“C:/xampp/htdocs”)中


  • 将以下.htaccess文件添加到项目的根目录(通常为“C:/xampp/htdocs/projectName”)


  • 将以下.htaccess文件添加到您的公共(public)目录(通常为“C:/xampp/htdocs/projectName/public”)中


  • 可以通过转到http:\\dev.projectName
  • 查看

    我知道这是一个漫长的过程,但这是我当时可以找到的唯一解决方案,它对我有用。
    每当您创建一个新项目时,这样做的确很麻烦。这就是我改用docker的原因之一,我认为无论如何这都是一个更好的解决方案,

    10-07 21:42