所以我试图改变我的网站:
对此:
我一直在努力做到这一点,但每当我运行它时我都会遇到404错误!
这是我的htaccess:
DirectoryIndex Profe5-Web
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^profe5\.com$ [NC]
RewriteRule ^(.*)$ http://profe5.com/$1 [R=301,L]
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.html [R=301,L]
RewriteRule ^Profe5-Web/public_html/(.*)$ $1 [R=301,L]
如果你们能帮助我,真是太棒了! 非常感谢!
答案 0 :(得分:1)
这应该是你完整的.htaccess:
DirectoryIndex Profe5-Web
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^profe5\.com$ [NC]
RewriteRule ^(.*)$ http://profe5.com/$1 [R=301,L]
# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+Profe5-Web/public_html/([^.]+)\.html [NC]
RewriteRule ^ %1? [R=301,L]
# internal forward from pretty URL to actual one
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/.]+)/?$ Profe5-Web/public_html/$1.html [L,QSA]
答案 1 :(得分:0)
您可以考虑通过虚拟主机执行此操作;请咨询托管公司,了解如何设置
答案 2 :(得分:0)
如果您希望/login
映射到Profe5-Web/public_html/login.html
- 请尝试:
RewriteRule ^([^.]+)$ Profe5-Web/public_html/$1.html [R=301,L]
您已经拥有的RewriteRule,RewriteRule ^([^\.]+)$ $1.html [R=301,L]
会将/login
映射到/login.html
,这似乎无法满足您的需求。