在apache中设置localhost站点?

我一直在寻找如何在没有任何好的解决方案的情况下在ubuntu上设置localhost环境的几周。

这就是我想要实现的目标:

我希望我的根文件夹是/home/’username’/Sites/’projectname.pl’或/ home /’username’/ Sites / pl /’projectname’/ public(或simular)

当访问我的本地主机时,我不想写localhost /’projectname’/ public(或诸如此类)我希望能够通过输入http://’projectname’.pl来访问该项目

我知道这可以在OSX上的apache服务器上实现,但是我无法在我的Ubuntu机器上找到任何指南来实现这一点。

我真的很感激任何帮助,我真的希望这是可能的。

问候!

您可以设置您的虚拟主机

/etc/apache2/sites-available 

对于您希望在此目录中创建conf文件的每个vhost。 在vhost配置中,您可以设置文档根目录。 该文件的名称必须以.conf结尾

例如:/etc/apache2/sites-available/projectname.conf:

  ServerName projectname.pl DocumentRoot "/home/Sites/projectname/public"  

现在启用您的网站:

 sudo a2ensite projectname 

并重启apache:

 sudo /etc/init.d/apache2 restart 

然后编辑/ etc / hosts文件。

只需粘贴该行:

 127.0.0.1 projectname.pl 

最后。

现在,您可以使用http://projectname.pl访问您的网站

只是为了在这里添加其他答案,我配置这种行为的方式是使用符号链接…似乎工作正常。 这很容易做到,并且不需要任何配置文件。

 sudo ln -s ~/path/to/yoursite/ /var/www/html/yoursite 

上面的最后一部分可能会有所不同。 以上是我在Linux Mint 17中使用的内容。’/ var / www / html /’目录是默认的apache“site”文件夹。

所以是的,对于那些正在寻找一种干净,简单的方法来映射站点而不实际将其站点的目录放在默认的apache文件夹中的人,你可以去。

注意:我不确定上述内容是否适用于生产环境,但对于本地开发,似乎没问题。 我不确定的原因是因为符号链接带有主目录中文件夹的权限,该权限很可能是用户“拥有”的。 如果你需要,你可以明显地将其更改为更安全的“root”,就像apache目录一样,但是我只是在我的开发环境中使用它。

我按照本指南解决了这个问题。 一个非常简洁的解决方案,使您能够在指定的“站点”文件夹中创建一个文件夹,然后访问它,而无需为每个新站点添加可用的站点。

指南 – > http://css.dzone.com/articles/drop-folder-directory-and-have