我正在本地的一个网站上工作,该网站位于一个文件夹中:
本地主机/临时地点
我如何使用 Apache2 进行如下路由:
临时地址:8890
或者只是一些不是子目录的东西?这让本地开发非常令人沮丧。
答案1
您需要做两件事,第一件是创建一个 apache2 虚拟主机,它将响应给定的域名和使用的端口;因此,在/etc/apache2/sites-available/tempplace.conf
其中应该进行符号链接,/etc/apache2/sites-enabled/000-tempplace
您应该有如下内容:
<VirtualHost tempplace.localhost:80>
DocumentRoot /www/example1
ServerName tempplace.localhost
# Other directives here
</VirtualHost>
完成该部分后,您可以重新启动 apache2 服务器。接下来,您必须启用 localhost 主机名,为此,您需要编辑文件/etc/hosts
并添加以下内容:
127.0.0.1 localhost.localdomain localhost tempplace.localhost
这实际上将tempplace.localhost
解析添加到您的本地 DNS,这意味着浏览它将指向 localhost。然后,您应该能够在本地主机上浏览您的 Apache 虚拟服务器,而无需诉诸不同的端口。
答案2
让我对 In Protest 的回答补充几点。
1). 启用apache userdir模块。
sudo a2enmod userdir
这将启用 apache userdir 模块。现在您可以将网站内容放入~/public_html/
主目录中。
注意:默认文件夹是~/public_html
2). 对 进行必要的修改/etc/apache2/mods-enabled/userdir.conf
。
3). 重启apache
sudo /etc/init.d/apache2 restart
现在您可以通过浏览器访问该网站http://ip 地址/~用户名。
4)为该网站设置虚拟主机,如“抗议”中的答案所述
如果你想运行 php 文件,你需要再执行一步
编辑/etc/apache2/mods-enabled/php5.conf
并注释掉以下几行:
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>
然后重新启动apache。
就这样。您已经完成了。
参考:https://wiki.ubuntu.com/UserDirectoryPHP
希望这能有所帮助。如果您遇到任何困难,请随时在此处发布。