2013-10-06 35 views
3

我一直在尝试过去几个小时在我的LAMP机器中编写干净的URL。Apache重写 - 本地主机中的干净URL

Apache的mod_rewrite已启用,我试图使用.htaccess文件将URL GET参数传递给我的index.php脚本,该脚本当时只是_GET的var_dump。

我目前的.htaccess是下面的(虽然我已经试过它相当多的变化我就没有成功其他的答案中找到)

RewriteEngine On 

#Make sure it's not an actual file 
RewriteCond %{REQUEST_FILENAME} !-f 

#Make sure its not a directory 
RewriteCond %{REQUEST_FILENAME} !-d 

#Rewrite the request to index.php 
RewriteRule ^(.*)$ index.php?/get=$1 [L] 

当我指出我的浏览器到localhost/MY_PROJECT /测试,我得到的是一个404错误说:

未找到

所请求的网址/ MY_PROJECT /测试此服务器上找到。

的Apache/2.2.22(Ubuntu的)在本地主机端口80

服务器显然我失去了一些东西很明显这里,任何帮助吗?

+1

你需要'RewriteBase /'太,右后'RewriteEngine叙述On' – Yang

回答

3

2的事情,寻找:

  1. 确保的.htaccess启用
  2. 确保上面的代码是在my_project目录。

然后加入RewriteBase线以及:

RewriteEngine On 
RewriteBase /my_project/ 

#Make sure it's not an actual file 
RewriteCond %{REQUEST_FILENAME} !-f 
#Make sure its not a directory 
RewriteCond %{REQUEST_FILENAME} !-d 
#Rewrite the request to index.php 
RewriteRule ^(.*)$ index.php?get=$1 [L] 
+0

这做到了,谢谢! – ppp

+0

不客气,很高兴它为你解决。 – anubhava