.htaccess隐藏.php而不更改链接地址中的.php

.htaccess隐藏.php而不更改链接地址中的.php,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,1我试图用这段代码隐藏扩展名中的.php,它成功了,但我必须将所有url从/about/about.php更改为/about/about。有没有一种方法可以让它直接运行,即使链接包含一个.php Options -Indexes RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)/$ $1 [R=301,L] RewriteCond %{THE_REQUEST} ^(.*)\.php([#?][^\ ]

1我试图用这段代码隐藏扩展名中的.php,它成功了,但我必须将所有url从/about/about.php更改为/about/about。有没有一种方法可以让它直接运行,即使链接包含一个.php

Options -Indexes
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ $1 [R=301,L]

RewriteCond %{THE_REQUEST} ^(.*)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.*)\.php$ $1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]
我必须在我的lib和about目录中应用上述内容,才能使上述内容正常工作,但所有其他目录都不需要.htaccess,它也可以正常工作

2当我单击当前显示的帖子/about/post-1时,我想获取删除/about/post-1的链接,以在url中显示library/post-1。请问你能告诉我怎么做

Options -Indexes
RewriteEngine on
RewriteBase /about/

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ $1 [R=301,L]

RewriteCond %{THE_REQUEST} ^(.*)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.*)\.php$ $1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]

RewriteCond %{REQUEST_FILENAME} !-d [NC]
RewriteCond %{REQUEST_FILENAME} !-f [NC]
RewriteRule ^(.*)$ /library/viewpost.php?id=$1 [QSA,L]

请一次问一个问题。把你的两个不同的问题分成两个不同的问题。只有在修改后才有可能重复几乎相同的问题