当前位置:Gxlcms > PHP教程 > .htaccess文件怎么不管用啊?呜呜呜~

.htaccess文件怎么不管用啊?呜呜呜~

时间:2021-07-01 10:21:17 帮助过:6人阅读

各位大神早上好,我在使用.htaccess文件重写url的时候发现文件怎么也不起作用,下面是我的一些操作过程,请大神帮我看看哪里出了错。谢谢!

对httpd.conf做一下修改:
1.去掉"LoadModule Rewrite_module modules/mod_Rewrite.so"前的#
2.将"AllowOverride None"改为"AllowOverride All"
3.设置"AccessFileName .htaccess"

因为我学习的课本是《深入理解php:高级技巧、面向对象与核心技术》,所以使用的是其配套的代码,其网站url的形式是这样的:

课本提供的.htaccess文件代码如下:


RewriteEngine on
#下面的路径我做了适当修改
RewriteBase /                 
RewriteRule ^(about|contact|this|that|search)/?$ index.php?p=$1

按照预想,其url应该变成下面的这种形式:

可是结果却没有任何变化,网上找了一些关于".htaccess无效"的帖子都没有解决我的问题,所以来这里请大神帮我指点迷津。

tip:
当我将.htaccess文件中的RewriteBase后面路径故意写错时,页面出现500错误,我认为这说明并非是.htaccess文件没有加载,而是里面的代码有问题

回复内容:

各位大神早上好,我在使用.htaccess文件重写url的时候发现文件怎么也不起作用,下面是我的一些操作过程,请大神帮我看看哪里出了错。谢谢!

对httpd.conf做一下修改:
1.去掉"LoadModule Rewrite_module modules/mod_Rewrite.so"前的#
2.将"AllowOverride None"改为"AllowOverride All"
3.设置"AccessFileName .htaccess"

因为我学习的课本是《深入理解php:高级技巧、面向对象与核心技术》,所以使用的是其配套的代码,其网站url的形式是这样的:

课本提供的.htaccess文件代码如下:


RewriteEngine on
#下面的路径我做了适当修改
RewriteBase /                 
RewriteRule ^(about|contact|this|that|search)/?$ index.php?p=$1

按照预想,其url应该变成下面的这种形式:

可是结果却没有任何变化,网上找了一些关于".htaccess无效"的帖子都没有解决我的问题,所以来这里请大神帮我指点迷津。

tip:
当我将.htaccess文件中的RewriteBase后面路径故意写错时,页面出现500错误,我认为这说明并非是.htaccess文件没有加载,而是里面的代码有问题

??? 你理解反了吧. 这个重写规则是把 localhost/about[/]这种URL 变成 index.php?p=$1 这种URL, []里面的是可选的

人气教程排行