.htaccess 从子文件夹重定向到域无法正常工作
.htaccess redirect from subfolder to domain not working properly
我正在为我的网站使用 PHP、Laravel 8 框架和 cPanel。我想做的是这样的。
重定向路由来自
http://example.com/example.com/public/
http://example.com/example.com/public/about
http://example.com/example.com/public/contact
.
.
// more
到
https://example.com/
https://example.com/about
https://example.com/contact
.
.
// more
我在域根 public_html
文件夹中有 .htaccess
文件。
.htaccess 文件
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^example.com$
RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) /example.com/public/ [L]
如果我做错了什么,请指导我。
请根据您显示的尝试尝试遵循规则。请确保在测试您的 URL 之前清除您的浏览器缓存。确保两件事。 1st- 将 htaccess 规则文件保持在与文件夹 example.com 相同的级别,2nd- 将 index.php 保持在 /root/example.com/public 文件夹中。
Options -Indexes -MultiViews
RewriteEngine on
RewriteCond %{HTTPS} !on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/example\.com/public [NC]
RewriteRule ^(.*)/?$ example.com/public/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ example.com/public/index.php [L]
我正在为我的网站使用 PHP、Laravel 8 框架和 cPanel。我想做的是这样的。
重定向路由来自
http://example.com/example.com/public/
http://example.com/example.com/public/about
http://example.com/example.com/public/contact
.
.
// more
到
https://example.com/
https://example.com/about
https://example.com/contact
.
.
// more
我在域根 public_html
文件夹中有 .htaccess
文件。
.htaccess 文件
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^example.com$
RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) /example.com/public/ [L]
如果我做错了什么,请指导我。
请根据您显示的尝试尝试遵循规则。请确保在测试您的 URL 之前清除您的浏览器缓存。确保两件事。 1st- 将 htaccess 规则文件保持在与文件夹 example.com 相同的级别,2nd- 将 index.php 保持在 /root/example.com/public 文件夹中。
Options -Indexes -MultiViews
RewriteEngine on
RewriteCond %{HTTPS} !on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/example\.com/public [NC]
RewriteRule ^(.*)/?$ example.com/public/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ example.com/public/index.php [L]