我想使用htaccess重写URL来传递1个参数,例如this问题。在此基础上,我尝试重定向。
我的改写像是this;
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.html?pg=$1 [L,QSA]
</IfModule>
不幸的是,这不起作用,它将所有URL重定向到主页(甚至也不存在)。 您能帮我解决我的错吗?
答案 0 :(得分:0)
通过对问题的评论,您可以清楚地知道您实际要做什么。
我认为这是您要寻找的,尽管我不太了解将HTTP GET参数传递给html文件的意义。
RewriteEngine on
RewriteCond %{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI} !-d
RewriteRule ^/?([\w]+) /index.html?pg=$1 [END,QSA]
此规则将在http服务器主机配置或动态配置文件(“ .htaccess”)中同样起作用,如果可以访问配置,则绝对应该首选第一个选项。
此外,还必须在HTTP主机中加载并启用重写模块,如果决定使用动态配置文件,则需要确保它位于http主机的DOCUMENT_TOOR
中文件夹,对于http服务器进程是可读的。