Php htaccess子域配置和url重写
任何人都可以向我提供htaccess配置,以便我可以将我的文件夹视为子域 假设用户将尝试浏览Php htaccess子域配置和url重写,php,.htaccess,url-rewriting,subdomain,Php,.htaccess,Url Rewriting,Subdomain,任何人都可以向我提供htaccess配置,以便我可以将我的文件夹视为子域 假设用户将尝试浏览http://folder.mydomain.com用户实际上看到了http://mydomain.com/folder 另外,我希望浏览器中的URL显示http://folder.mydomain.com而非http://mydomain.com/folder 虽然我在互联网上找到了解决方案,但无法使其发挥作用 提前感谢。试试: RewriteEngine On # to handle directo
http://folder.mydomain.com
用户实际上看到了http://mydomain.com/folder
另外,我希望浏览器中的URL显示http://folder.mydomain.com
而非http://mydomain.com/folder
虽然我在互联网上找到了解决方案,但无法使其发挥作用
提前感谢。试试:
RewriteEngine On
# to handle directory slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)
RewriteCond %{DOCUMENT_ROOT}/%1%{REQUEST_URI} -d
RewriteRule ^(.+[^/])$ /$1/ [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)
RewriteCond %{DOCUMENT_ROOT}/%1 -d
RewriteRule ^(.*)$ /%1/$1 [L]
条件首先检查请求是否已针对现有文件或目录,然后检查主机名是否以“www”开头,然后为子域创建分组(例如,文件夹
),然后在第一条规则中,检查请求是否位于“文件夹”内是一个目录,请求不会以斜杠结尾。这将重定向请求以包含尾部斜杠。这是因为mod_dir和DirectorySlash选项将重定向对没有尾部斜杠的目录的请求,这将公开您的“文件夹”
第二条规则具有相同的条件,只是它只检查子域是否是存在的文件夹。然后它会在内部将请求重写到该文件夹。到目前为止,您尝试了什么?