.htaccess 多个系统文件扩展名上的htaccess remove.php
这是我的.htaccess。对于section.php上的系统生成URL,这可以正常工作。但是当我为article.php、product.php、page.php、contact.php添加额外的行时,它就不起作用了。关于添加多个mod重写的任何想法.htaccess 多个系统文件扩展名上的htaccess remove.php,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,这是我的.htaccess。对于section.php上的系统生成URL,这可以正常工作。但是当我为article.php、product.php、page.php、contact.php添加额外的行时,它就不起作用了。关于添加多个mod重写的任何想法 RewriteEngine on RewriteCond %{HTTP_HOST} ^example.co.uk [NC] RewriteRule ^(.*)$ http://www.xampleco.uk/$1 [L,R=301] Rewri
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.co.uk [NC]
RewriteRule ^(.*)$ http://www.xampleco.uk/$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.xample.co.uk/ [R=301,L]
RewriteEngine On
RewriteBase /
# Redirect .php URLs to rewritten URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)\.php$ $1 [L,QSA,R=301]
# Rewrite URLs for processing by router (section.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ section.php?url=$1 [QSA,L,NC]
# These are working
Redirect 301 /files/example.pdf http://www.example.co.uk
Redirect 301 /section.php/11/1/life-drawing http://www.example.co.uk
# This is working, but leaves a trail of the url onto the redirect, ok but would be nice to be cleaner
Redirect 301 /section/116/1/drawings http://www.example.co.uk
不要将
mod_rewrite
规则与mod_别名
规则混用,并将重定向规则放在内部规则之前
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^example.co.uk [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.xample.co.uk/ [R=301,L]
RewriteRule ^files/example\.pdf$ / [L,R=302,NC]
RewriteRule ^section\.php/11/1/life-drawing/?$ / [L,R=302,NC]
RewriteRule ^section/116/1/drawings/?$ / [L,R=302,NC]
# To internally forward /dir/file to /dir/file.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC]
RewriteRule ^(.+?)/?$ $1.php [L]
# Rewrite URLs for processing by router (section.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^article/(.+)$ article.php?url=$1 [QSA,L]
# Rewrite URLs for processing by router (section.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ section.php?url=$1 [QSA,L]
非常感谢您宝贵的回复。它可以工作,但如果我在section.php之后添加contact.php和page.php(如下面所示)#重写路由器处理的URL(section.php)RewriteCond%{REQUEST_FILENAME},它们就不能工作了-f RewriteRule^(+)$section.php?url=$1[QSA,L]#重写url供路由器处理(page.php)RewriteCond%{REQUEST_FILENAME}-f RewriteRule^(+)$page.php?url=$1[QSA,L]#重写路由器处理的url(contact.php)RewriteCond%{REQUEST_FILENAME}-重写规则^(+)$contact.php?url=$1[QSA,L]好的,我想做的是从所有url中去掉.php。系统在section.php上生成页面。article.php。contact.php和page.php,但无法使用multiview,因为重定向无法正常工作。这些来自cms的URL感谢,大多数页面都能正常工作,section.php,现在contact.php celiadickson.co.uk,但是page.php不在传记链接上。它在section.php上正常工作,重定向也能正常工作。非常感谢。但是article.php和product.php上的相同场景(如section.php)不起作用。也不能在/adminok上登录到站点admin,所以我不能在#Rewrite url for processing by router(article.php)RewriteCond%{REQUEST_FILENAME}下添加这个-f RewriteCond%{REQUEST_FILENAME}-重写规则^(+)$article.php?url=$1[QSA,L]是否还包括article.php和product.php的规则?