我创建了www.example.com
和m.example.com
。 m.example.com
位于htdocs/m/
文件夹中。我在.htaccess
:
# Redirect external .php requests to extensionless url
RewriteCond %{THE_REQUEST} \s/+(.*?/)?(?:index)?(.*?)\.php[\s?] [NC]
RewriteRule ^ /%1%2 [R=302,L,NE]
#mobile
RewriteCond %{HTTP_HOST} ^m\.example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/m(/|$) [NC]
RewriteRule ^(.*)$ m/$1 [L]
# Resolve .php file for extension-less php urls
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC]
RewriteRule ^(.+?)/?$ /$1.php [L]
现在,如果用户点击m.example.com/abc
并且abc
文件不存在,它会将用户重定向到错误页面,因为我在.htaccess
代码上有以下代码在htdocs/m/
文件夹
ErrorDocument 404 http://m.example.com/error
但现在我希望将用户重定向到www.example.com/abc
,因为abc
可能是桌面版本中的有效文件。仅当桌面站点中不存在文件时,用户才会被重定向到错误页面。
答案 0 :(得分:2)
您可以在DocumentRoot
的{{1}}中将此规则设为第一条规则:
m.example.com