我已经安装了 xampp,并开始配置我当前的工作项目,但结果由于特殊情况,我无法执行此操作。首先,我猜想这是 xampp 的问题,但我决定创建简单的虚拟主机来检查它是如何工作的,这个虚拟主机运行正常,但我的工作项目却不行 :(。所以,我会告诉我我做了什么,如果有人能帮助我,我会非常高兴:
XAMPP 位于/选择/lampp
工作和定制项目/主页/awesomeUser/dirForWork/projForWor
#
从 apache 中删除httpd.conf
虚拟主机- 创建了新的虚拟主机,
httpd-vhosts.conf
它看起来像:
<VirtualHost *> DocumentRoot "/home/awesomeUser/dirForWork/projForWor" ServerName test.localistic <Directory "/home/awesomeUser/dirForWork/projForWor"> Require all granted </Directory> </VirtualHost>
在/主页/awesomeUser/dirForWork/projForWor我index.php
有echo phpinfo();
- 添加到
/etc/host 127.0.0.1 test.localistic
- 重新启动 xampp,就这样,获利!
但是我为我的工作项目做了同样的操作,我只是重定向到 xampp 的启动页面。这怎么可能呢?那个启动项目在 /opt 上,我的请求转到 /home... 分享你对此的想法
答案1
自从我在 Apache 中设置 vhost 以来已经有一段时间了,但我认为它应该更符合
<VirtualHost *:80>
DocumentRoot /home/awesomeUser/dirForWork/projForWor
ServerName test.localistic
<Directory /home/awesomeUser/dirForWork/projForWor>
Require all granted
</Directory>
</VirtualHost>
编辑
我认为你不需要 DocumentRoot 和 Directory 中的“”
另外,你还记得在 index.html 之前添加 index.php 吗?
sudo nano /etc/apache2/mods-enabled/dir.conf
您还可以将我的答案中的 vhost 设置添加到 /etc/apache2/sites-available 中,然后将其符号链接到启用的站点,重新加载 Apache 就可以了。
举例来说,将我的答案添加到一个文件中(随便叫什么),但为了举例,我们将其称为 work.conf
然后
sudo a2ensite work.conf
进而
sudo service apache2 reload
最终编辑
我不使用 xampp,我只是安装了常规的 LAMP。我将上面的答案(但经过调整以匹配我的主目录)添加到 /etc/apache2/sites-available/geoffmcc.conf
然后就
sudo a2ensite geoffmcc.conf
sudo service apache2 reload
调整我的域名以接受,正如你所见,vhost 可以工作
与默认网站相反