0

这是我想要达到的结果:

http://www.sample.com/index.php?sec=fb&h=var2

http://www.sample.com/fb?w=var1&var=2

这是我尝试使用的 .htaccess 文件中的代码:

RewriteRule ^fb$ fb.php [L]

如果有人花时间帮助我解决这个问题,我将不胜感激。非常感谢!

4

2 回答 2

1

没有 PHP 重写之类的东西。如果要删除 .php 文件扩展名,可以这样做。

这是 .htaccess 重写,你可以尝试在你的 .htaccess 上使用它:

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [L, QSA]

另外,请确保您已打开 mod_rewrite。

第一步,打开与服务器的 SSH 连接,使用 root 登录并输入

a2enmod rewrite

它将为您启用它,或者告诉它是否已经启用。

并且,确保位于/etc/apache2/sites-enabled的文件000-default具有

<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

代替

<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>
于 2013-09-15T12:21:49.320 回答
0

如果您只想通过一个网址来实现它,那就是 http://www.sample.com/fb.php?w=var1&=h=var2

然后使用下面的重写规则

RewriteRule ^fb /fb.php [L,QSA]

否则,如果您想要每个 .php 网址,请使用上面的 christian 答案

您的重写规则很好,只需在末尾添加 QSA,以附加 url 的查询字符串

于 2013-09-15T12:26:51.107 回答