一尘不染

如何使用.htaccess创建干净的URL

php

这是我的.htaac​​cess代码。

RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)/$ movie.php?name=$1
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example\.in$
RewriteRule ^/?$ "http\:\/\/example\.in" [R=301,L]
ErrorDocument 404 /404.php
AddDefaultCharset UTF-8
Header unset ETag
FileETag None

我需要网站的干净URL。我参考了许多教程和论坛,并创建了上面的代码。但是无法正常工作。几乎我正在与代码作斗争。我不太清楚干净的URL概念。我要在我的php页面上编写任何编码吗?

<a href='movie.php?name=titanic'> Titanic </a>

我在index.php文件中有此链接。

我想要example.in/movie/titanic同时点击链接泰坦尼克号。

我也想通过$ _ [request]获得值。

我到底要做什么。请不要重复提出这个问题,我已经搜索了很多,并且不清楚这个概念。请帮帮我。

谢谢


阅读 220

收藏
2020-05-29

共1个答案

一尘不染

用以下代码替换代码:

ErrorDocument 404 /404.php
AddDefaultCharset UTF-8
Header unset ETag
FileETag None

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+movie\.php\?name=([^\s&]+) [NC]
RewriteRule ^ movie/%1? [R=301,L]

RewriteRule ^movie/([^/]+)/?$ movie.php?name=$1 [L,QSA]
2020-05-29