我最近在000webhost.com上托管了我的网站,一旦我托管了它,我就登录查看它的工作情况。当我点击包含三个参数(如url,id和ref)的消息或配置文件等链接时,页面会被重定向,但不会加载配置文件/消息页面。
例如,链接是:example.com/profile/Sagar-Chauhan/123456/p。点击它,它会被重定向,但网址显示这样的东西 www.example.com/?url=sagar-chauhan&id=123456&ref=p而不是www.example.com/profile/Sagar-Chauhan/1234656/p
以下是我的.htaccess代码。
Options +FollowSymlinks
Options -Indexes
RewriteEngine On
RewriteBase /
ErrorDocument 404 /404.php
RewriteRule ^profile/([^/]*)/([^/]*)/([^/]*)$ profile.php?url=$1&id=$2&ref=$3 [L]
RewriteRule ^profile/([^/]*)/([^/]*)/([^/]*)/$ profile.php?url=$1&id=$2&ref=$3 [L]
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule ^(.*)$ "http\:\/\/www\.example\.com\/$1" [R=301,L]
答案 0 :(得分:0)
指令的顺序不正确。请改用以下方式使用它:
Options +FollowSymlinks
Options -Indexes
ErrorDocument 404 /404.php
RewriteEngine On
RewriteBase /
# Add "www."
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
# Rewrite profile/x/x/x to profile.php
RewriteRule ^profile/([^/]*)/([^/]*)/([^/]*)/?$ profile.php?url=$1&id=$2&ref=$3 [L]