繁体   English   中英

如何使用 .htaccess 文件重写 URL?

[英]how to rewrite URL using .htaccess file?

我在使用 .htaccess 文件重写 url 时遇到问题。 我不知道正则表达式。 我有很多博客,并使用在线重写规则生成器生成 url 并粘贴到 .htaccess 文件中。 但没有人工作。 我在 apache 服务器的 httpd.conf 文件中启用了 mod_rewrite 模块。

我想重写下面的网址。

我在 OS - Win7 和 Apache 服务器中开发了项目。

http://localhost:81/quora/tamilnanban/innerpage.php?url=why-you-should-avoid-watching-porn-on-android-smartphones

http://localhost:81/quora/tamilnanban/why-you-should-avoid-watching-porn-on-android-smartphones

我当前的 .htaccess 文件包含以下代码:

RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^.*$ ./index.php
#RewriteRule ^url/([^/]*)\.html$ :81/quora/tamilnanban/innerpage.php?url=$1 [L]

RewriteRule ^/quora/tamilnanban/([^/]*)\.html$ /quora/tamilnanban/innerpage.php?url=$1 [L]

上述规则也不起作用。 请帮助我使用 .htaccess 文件实现 url 重写。 另外,如果我在上述步骤中犯了任何错误,请纠正我。 提前致谢。

要将/quora/tamilnanban/innerpage\\.php\\?url=foobar"转换为/quora/tamilnanban/foobar您可以在/quora/tamilnanban/.htaccess使用以下规则:

RewriteEngine on

#1)Redirect "/quora/tamilnanban/innerpage\.php\?url=foobar" to "/quora/tamilnanban/foobar"#
RewriteCond %{THE_REQUEST} /quora/tamilnanban/innerpage\.php\?url=(.+)\sHTTP  [NC]
RewriteRule ^ /quora/tamilnanban/%1? [L,R]
#2)The rule bellow will internally map "/quora/tamilnanban/foobar"" to "/quora/tamilnanban/innerpage\.php?url=foobar"#
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?(.+)$ /quora/tamilnanban/innerpage\.php?url=$1 [L]

暂无
暂无

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

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