2015-11-25 124 views
1

我正在localhost上运行一个项目,我的站点地址是 http://localhost/test/a.php/b。 我希望此网址为用户显示为http://localhost/test/b.htaccess重写url以隐藏文件名

a.php是一个php文件,b是它的值。

下面是我的htaccess文件设置:

Options +FollowSymLinks 
RewriteEngine On 
RewriteRule \.(css|js|png|jpg|gif)$ - [L] 
RewriteRule ^(index\.php|robots\.txt)$ - [L] 

RewriteCond %{REQUEST_URI} !(.*)a.php 
RewriteRule ^(.*)$ a.php/$1 [L] 
+0

你的意思是尝试一个星期?你到目前为止是否尝试过任何htaccess规则? – sjsam

+0

yess很多,但没有得到答案 – saquib

回答

0

您可以像使用

RewriteEngine on 
RewriteBase/

RewriteRule ^/a.php/(.+)$ /$1 [L,QSA] 
+0

对不起,没有工作.. – saquib

+0

是否在Apache中启用mod_rewrite? – sjsam

+0

yess其启用 – saquib

1

在你的htaccess的RewriteBase应设置为/

如果人们能看到的网址是

http://localhost/test/b 

以下重写规则:

RewriteRule ^(\w+)$ a.php/$1 

将网址更改为

http://localhost/test/a.php/b 

使PHP引擎能处理它。

用户HTACCESS TESTER SITE检查重写规则的工作方式。

+0

@saquib:Starkeen的答案也有效,并且包含文件和目录检查。如果这些解决方案都不适用于您,则mod_rewrite未启用或您的htaccess文件未被考虑。 – sjsam

+0

我试过这个htaccess的代码,它也不工作sir.I想要打开一个.php文件,但隐藏的url它是先生所以我的网址将成为http:// localhost/test/b。 – saquib

+0

查看编辑..代码中有一个小错误。 – sjsam