我已根据教程更改了.htaccess,以隐藏.php文件扩展名和$ _Get from URL,但页面仍在继续跳转。
我已经尝试了许多.htaccess更改,这是唯一可以部分运行的更改。但是,这似乎导致不断的重定向/刷新。
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule .* https://%{HTTP:Host}%{REQUEST_URI} [L,R=permanent]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)/([0-9a-zA-Z_-]+) $1.php?name=$2 [NC,L]
希望将"profile.php?name=company-name"
更改为"profile/company-name"
,而页面的外观或功能没有任何不同。某些$_Get
动态内容正在加载,但整个页面仍在跳过,并且CSS样式均无效。
用此替换所有规则:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTPS} !on
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule ^ https://%{HTTP:Host}%{REQUEST_URI} [L,R=301,NE]
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^([^/]+)/?$ $1.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^([^/]+)/([\w-]+)/?$ $1.php?name=$2 [QSA,L]
请确保在新的浏览器中测试此更改,以避免旧的浏览器缓存。
对于您的css / js / issues,请将其添加到页面HTML的<head>
标签下面:
<base href="/" />
这样,每个相对URL都从该基本URL而不是当前页面的URL解析。