我正在我的笔记本电脑上构建一个网站,需要通过自定义主机名引用,而不是深入本地主目录。
我需要通过http://project.name/
在本地引用此网站我的工作是在我的hosts文件中创建了一个新条目,在我的apache vhosts conf中创建了一个虚拟主机条目。
我还想允许外部用户查看我的网站。我想,他们需要通过我的IP地址和端口号来访问它。
我该怎么做?
我认为需要将'Listen 8080'添加到apache.conf。
我是否创建了一个新的vhosts条目,它复制了我之前为本地主机名创建的条目,但是具有“localhost:8080”名称? (这闻起来很糟糕)。
或者可以修改现有的vhosts条目以同时监听localhost:8080?
为了进一步澄清,我需要:
http://project.name and
http://localhost:8080
引用相同的确切网站。这是因为我需要使用自定义主机名创建站点。我的图像引用,例如需要以“/images/example.jpg”而不是相对引用开头。这是因为技术部门需要做10分钟的额外工作。 :^)
谢谢, 斯科特
答案 0 :(得分:1)
不要在vhost指令中指定主机(例如localhost
),而是使用*
。这将允许您通过不同的主机名访问该虚拟主机。如果您完全忽略该区块中的ServerName
,则可以通过http://localhost:8080
或通过http://<ip address>:8080
从机器外部访问同一网站。
NameVirtualHost *:8080
<VirtualHost *:8080>
# your stuff
</VirtualHost>
然后,您可以使用Listen
指令调整这些虚拟主机使用的接口:
Listen 8080 # you can hit the sites from outside your machine, OR
Listen 127.0.0.1:8080 # no access outside your machine
使用apachectl -S
仔细检查您的虚拟主机设置。