简体   繁体   English

用于wamp / www localhost的apache虚拟主机不起作用

[英]apache virtual host for wamp/www localhost doesnt work

I have set up a virtual host for a website on localhost, so it will be directed to blog.local.dev rather than local.dev/blog and it works fine, but when i try to do the same with the wamp/www localhost directory the seem to be a problem. 我已经在localhost上为一个网站设置了一个虚拟主机,所以它将被定向到blog.local.dev而不是local.dev/blog,它工作正常,但当我尝试对wamp / www localhost做同样的事情时目录似乎是个问题。 it show the wamp website with a list of all my projects, but when i click on my projects it says i dont have permission to access it(403 Forbidden). 它向wamp网站显示我所有项目的列表,但是当我点击我的项目时,它说我没有权限访问它(403 Forbidden)。

here is my hosts 这是我的主人

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost

127.0.0.1       localhost
127.0.0.1       local.dev
127.0.0.1       blog.local.dev

her is my httpd-vhosts.conf 她是我的httpd-vhosts.conf

# Virtual Hosts
#
# Required modules: mod_log_config

# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at 
# <URL:http://httpd.apache.org/docs/2.4/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin rofl@roflmao.org
    DocumentRoot "C:/wamp/www"
    ServerName local.dev
    ErrorLog "C:/wamp/www/error.log"
    CustomLog "C:/wamp/www/access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin rofl@roflmao.org
    DocumentRoot "C:/wamp/www/blog/public"
    ServerName blog.local.dev
    ErrorLog "C:/wamp/www/blog/logs/error.log"
    CustomLog "C:/wamp/www/blog/logs/access.log" common
</VirtualHost>

Hope any one can help me. 希望任何人都可以帮助我。

Sorry, no english 对不起,没有英文

in apache's httpd.conf file uncomment this line 在apache的httpd.conf文件中取消注释这一行

IncludeOptional "c:/wamp/vhosts/*"

in c:\\wamp\\vhosts create a file called anyname.conf and add this 在c:\\ wamp \\ vhosts中创建一个名为anyname.conf的文件并添加它

#for localhost
<VirtualHost *:80>
    DocumentRoot "c:/wamp/www/"
    ServerName localhost
</VirtualHost>

#for yourpage.localhost
<VirtualHost *:80>
    DocumentRoot "c:/wamp/www/yourfolder"
    ServerName yourpage.localhost
</VirtualHost>

in this way you don't need to edit windows hosts file because your custom local site will be a subdomain of localhost and wamp will manage itself 通过这种方式,您不需要编辑Windows主机文件,因为您的自定义本地站点将是localhost的子域,而wamp将自行管理

Edit: you can use 'lvh.me' instead of 'localhost', because localhost isn't a real domain, but lvh.me yes, and it resolves itself and all its subdomains to 127.0.0.1 (test.lvh.me => test.127.0.0.1) and works in every major browser (Chrome, Firefox, Opera, Safari, IEx) 编辑:您可以使用'lvh.me'而不是'localhost',因为localhost不是真正的域,但是lvh.me是,并且它将自身及其所有子域解析为127.0.0.1(test.lvh.me = > test.127.0.0.1)并适用于所有主流浏览器(Chrome,Firefox,Opera,Safari,IEx)

Sounds like your trying to do something wrong anyways. 听起来像是你试图做错事。 It sounds like your trying to setup a virtual host for the list of your projects, instead of one virtual host for each project. 听起来您尝试为项目列表设置虚拟主机,而不是为每个项目设置一个虚拟主机。

Setup one virtual host for each project seperately and check the .htaccess in the associated project, aswell as your apache config files. 单独每个项目设置一个虚拟主机并检查相关项目中的.htaccess ,以及您的apache配置文件。

Looking at your conifg, it seems like local.dev just lists the content of the folder C:/wamp/www . 看看你的conifg,看起来local.dev只是列出了文件夹C:/wamp/www

When you click on blog , you try to access: C:/wamp/www/blog which doesn't have any index.php and that will give you a 403 if you have Indexing off. 当您点击blog ,您尝试访问: C:/wamp/www/blog ,它没有任何index.php ,如果您关闭了Indexing,则会给出403。

It's the folder C:/wamp/www/blog/public that have the index.php . 它是具有index.php的文件夹C:/wamp/www/blog/public

When you click on a project (like blog ) you don't really access the vhost blog.local.dev but local.dev/blog 当你点击一个项目(比如blog )时,你并没有真正访问vhost blog.local.dev而是local.dev/blog

Am I understanding you correctly? 我理解你了吗?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM