繁体   English   中英

我的.htaccess中的RewriteRule命令不起作用

[英]RewriteRule command in my .htaccess doesn't work

我最近购买了一个php网站,该网站使用.htaccess中的RewriteRule重定向URL,例如将domain.com/login重定向到domain.com/login.php或将/ register重定向到/register.php等。 这些是我的.htaccess文件的内容:

options -multiviews
<IfModule mod_rewrite.c>
RewriteEngine On 
RewriteBase /
RewriteRule ^users$ users.php
RewriteRule ^login$ login.php
RewriteRule ^logout$ logout.php
RewriteRule ^log_out$ log_out.php
RewriteRule ^forgot$ forgot.php
RewriteRule ^manage_gigs$ manage_gigs.php
RewriteRule ^manage_orders$ manage_orders.php
RewriteRule ^new$ new.php
RewriteRule ^suggestions$ index.php
RewriteRule ^search$ search.php
RewriteRule ^edit$ edit.php
RewriteRule ^edit_extra$ edit_extra.php
RewriteRule ^bookmark$ bookmark.php
RewriteRule ^bookmarks$ bookmarks.php
RewriteRule ^settings$ settings.php
RewriteRule ^balance$ balance.php
RewriteRule ^order$ order.php
RewriteRule ^orders$ orders.php
RewriteRule ^inbox$ inbox.php
RewriteRule ^conversations/([^/.]*)?$ conversations.php?u=$1&%{QUERY_STRING}
RewriteRule ^upload$ upload.php
RewriteRule ^check_new$ check_new.php
RewriteRule ^spam$ spam.php
RewriteRule ^thank_you$ thank_you.php
RewriteRule ^track$ track.php
RewriteRule ^send_track$ send_track.php
RewriteRule ^confirmemail$ confirmemail.php
RewriteRule ^rss$ rss.php
RewriteRule ^terms_of_service$ terms_of_service.php
RewriteRule ^privacy_policy$ privacy_policy.php
RewriteRule ^about$ about.php
RewriteRule ^contact$ contact.php
RewriteRule ^advertising$ advertising.php
RewriteRule ^signup$ signup.php
RewriteRule ^forgotpassword$ forgotpassword.php
RewriteRule ^feature$ feature.php
RewriteRule ^feature_success$ feature_success.php
RewriteRule ^purchases$ purchases.php
RewriteRule ^suggested$ suggested.php
RewriteRule ^mysuggestions$ mysuggestions.php
RewriteRule ^myreferrals$ myreferrals.php
RewriteRule ^levels$ levels.php
RewriteRule ^categories/([^/.]+)?$ cat.php?cid=$1&%{QUERY_STRING}
RewriteRule ^user/([^/.]+)?$ user.php?uname=$1&%{QUERY_STRING}
RewriteRule ^tags/([^/.]+)/([^/.]+)?$ tags.php?cid=$1&tag=$2&%{QUERY_STRING}
RewriteRule ^([^/.]+)/([^/.]+)/([^/.]*)?$ view.php?title=$1&id=$2&%{QUERY_STRING}
</IfModule>
<IfModule mod_security.c> 
   # Turn off mod_security filtering. 
   SecFilterEngine Off 

   # The below probably isn't needed, 
   # but better safe than sorry. 
   SecFilterScanPOST Off 
</IfModule>

但是点击任何链接都会出现404错误(找不到页面),因为网址未重定向。 我正在使用cpanel。 我必须激活一些功能才能使其正常工作吗? 这里可能有什么问题? 谢谢。

似乎您没有启用重写规则。

  1. 打开httpd.conf ;

  2. 找到提到mod_rewrite.so的行;

  3. 删除前面的井号( # );

  4. 重新启动您的网络服务器;

更改RewriteBase /通过RewriteBase / Your folder /

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM