如何在 WAMP 服务器中使用 .htaccess?

Posted

技术标签:

【中文标题】如何在 WAMP 服务器中使用 .htaccess?【英文标题】:How to use .htaccess in WAMP Server? 【发布时间】:2011-05-22 10:46:51 【问题描述】:

我在网上搜索了 2 天,并尝试在本地 wamp 中使用 htaccess,但我不能!我知道有问题,但我不知道在哪里......

首先:我在 apache 菜单中激活了“rewrite_module”,然后我检查了 phpinfo 页面,我看到该模块已添加到其“Loaded Modules”部分。

第二:我检查了httpd.conf并做了一些更改,结果(只是重要部分):

ServerRoot "c:/program Files/wamp/bin/apache/apache2.2.11"
Listen 80
ServerName localhost:80
DocumentRoot "c:/program Files/wamp/www/"

<Directory />
Options FollowSymLinks
# AllowOverride None
# Order deny,allow
# Deny from all
AllowOverride all
Order Allow,Deny
Allow from all
</Directory>

<Directory "c:/program Files/wamp/www/">
Options Indexes FollowSymLinks
AllowOverride all
Order Allow,Deny
Allow from all
</Directory>

LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so

下一步:我为我的工作区创建了一个别名。以下是其 .conf 文件的内容:

Alias /basic_test/ "e:/Projects/basic_test/"

<Directory "e:/Projects/basic_test/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>

下一步: 我在我的工作区根目录中放置了一个简单的“index.php”和“test.php”,并通过以下地址测试了别名: --> "localhost/basic_test/index.php" --> "localhost/basic_test/test.php" 他们工作得很好......

最后,我在工作空间的根目录(在 index.php 旁边)添加了一个“.htaccess”文件,并在其中写道:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^index.php$ test.php
</IfModule>

但是当我尝试通过这个地址测试“.htaccess”时发生了问题: --> "localhost/basic_test/index.php"

它显示一个带有此消息的错误页面:

哎呀!此链接似乎已损坏。

【问题讨论】:

始终查看您的 (Apache) 错误日志。您可以为此使用 Wamp 图标(Apache -> 日志?) @Lekensteyn:我看了但我无法理解它的问题,无论如何这是一个很好的建议,谢谢。 ;) 【参考方案1】:

单击 Wamp 图标并打开 Apache/httpd.conf 并搜索“#LoadModule rewrite_module modules/mod_rewrite.so”。如下删除#并保存

LoadModule rewrite_module modules/mod_rewrite.so

并重新启动所有服务。

【讨论】:

无法在 wamp 2.4 上启动【参考方案2】:
RewriteEngine on
RewriteBase /basic_test/

RewriteRule ^index.php$ test.php

【讨论】:

我有一个问题:如果我尝试编辑别名 ton 指向另一个文件夹“e:/Projects/basic_test/new/path/”,我必须在 RewriteBase 前面更改该路径?! ......你能检查我的另一个问题吗?! ***.com/questions/4383451/…【参考方案3】:

点击:WAMP icon-&gt;Apache-&gt;Apache modules-&gt;chose rewrite_module

并重新启动所有服务。

【讨论】:

【参考方案4】:

打开httpd.conf文件并搜索

“重写”

,然后删除

“#”

在行首,所以行看起来像。

LoadModule rewrite_module modules/mod_rewrite.so

然后重新启动 wamp。

【讨论】:

【参考方案5】:

如果它与托管站点有关,则要求您的托管启用 url 写入,或者如果您想在本地计算机中启用它,请查看这个与在 wamp apache 中启用重写模块相关的 youtube 分步教程 https://youtu.be/xIspOX9FuVU?t=1m43s Wamp 服务器图标 -> Apache -> Apache Modules 并检查 rewrite module 选项 应该检查 请注意,启用重写模块后,您应该要求重新启动 wamp 服务器的所有服务,这一点非常重要

【讨论】:

以上是关于如何在 WAMP 服务器中使用 .htaccess?的主要内容,如果未能解决你的问题,请参考以下文章

将Apache的.htaccess转换到nginx中

使用.htaccess更改共享服务器中的文档根文件夹

Apache2.4.x版wamp server让外网访问及启用.htaccess

请求在 WAMP 上被阻止,但在 XAMPP 上允许 CORS

请求在 WAMP 上被阻止,但在 XAMPP 上允许 CORS

使用 WAMP 堆栈修复 localhost/phpmyadmin/ 地址