WAMP httpd.config 重定向

Posted

技术标签:

【中文标题】WAMP httpd.config 重定向【英文标题】:WAMP httpd.config redirect 【发布时间】:2014-05-05 04:17:46 【问题描述】:

我在 c:\wamp\www\ 的本地主机上使用 wamp。 该项目位于:c:\wamp\www\MyProj\public (root)。 在file1.php(位于根目录)中,我有一个指向一些假网址(/services/.....)的链接。 我正在尝试将该网址重定向到其他文件 service_router.php(与 file1.php 的方向相同)。

我在 httpd.config 中这样做:

<VirtualHost *:80>
  ServerName 127.0.0.1  
    DocumentRoot c:\wamp\www\
    <Directory "c:\wamp\www\">
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    RewriteEngine on
    RewriteCond %REQUEST_URI ^/MyProj/public/services/*
    RewriteRule . /MyProj/public/service_router.php

</VirtualHost>

但我的 WAMP 拒绝重启。 我的配置有什么问题?

【问题讨论】:

【参考方案1】:

我可以提几个建议吗?

如果您想使用虚拟主机,我认为这是一个非常好的主意。您首先需要确保 localhost 仍然有效,其次最好将您的实际项目移出 \wamp\ 文件夹结构。

所以这将是您的第一个(许多)VHOSTS 的一个很好的起点

例如,首先在任何驱动器的某处创建一个新的文件夹结构

C:\websites\project1\www

现在将您的项目复制到 www 文件夹。

现在设置虚拟主机

# must be first VHOST so the that localhost and the wamp menu page still work
# Also makes this the default site so any randon hacks on your ip address
# will come here and hopefully be rejected because it only 'Allows' access 
# from this machine ( see Allow Deny )
<VirtualHost *:80>
    DocumentRoot "D:/wamp/www"
    ServerName localhost
    ServerAlias localhost

    <Directory  "C:/wamp/www">
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1 localhost ::1 
    </Directory>

</VirtualHost>


<VirtualHost *:80>
    DocumentRoot "C:/websites/project1/www"
    ServerName project1.dev
    ServerAlias www.dqsc.old
    Options Indexes FollowSymLinks Includes ExecCGI

    <Directory "C:/websites/project1/www">
        AllowOverride All
        Order Allow,Deny
        Allow from all
    </Directory>

</VirtualHost>

除非你真的想把这个网站提供给全世界我建议你不要使用Allow from all

如果您想从内部网络上的任何计算机上查看您的站点,请尝试使用或第二条 Allow 行,只需使用您的 ip 地址的 4 个四分位数中的前 3 个,它将允许从以这 3 个开头的任何 ip 进行访问四分位数。

Order Deny,Allow
   Deny from all
   Allow from 127.0.0.1 localhost ::1 
   Allow from 192.168.0

现在您需要修改您的HOSTS 文件,以便 windows 知道您的新域名。

编辑c:\windows\system32\drivers\etc\hosts 并添加新站点名称project1.dev,就像这样,您必须启动编辑器“以管理员身份运行”,因为此文件受 Windows 保护:-

127.0.0.1 project1.dev

现在重新启动“DNS 客户端”服务以刷新 Windows dns 缓存,以便它看到您的新域名。启动命令窗口,再次“以管理员身份运行”。

net stop "DNS Client"
net start "DNS Client"

您现在应该可以在浏览器中输入http://project1.dev,它会找到您的新站点。

最后,一旦您测试您的网站是否正常工作,请将 url 重写编码放入新项目根目录下的 .htaccess 文件中。

C:\websites\www\project1\.htaccess

【讨论】:

以上是关于WAMP httpd.config 重定向的主要内容,如果未能解决你的问题,请参考以下文章

Wamp server 2.5 页面重定向错误

wamp https vhost 域重定向到 localhost https

WAMP 的远程访问重定向到重复的 url

虚拟主机 - 全部重定向到 WAMP 本地主机“主页”页面

Wamp环境域名重定向问题

成功登录重定向到登录页面