我有一个简单的重定向规则如下:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^contact-us\/?.*$ ./contact-us.php [NC,QSA,L]
此规则适用于以下网址:
http://localhost/folder1/folder2/folder3/contact-us/
问题是,如果我删除最后的斜杠,页面正确加载但资源(css / js)没有加载
http://localhost/folder1/folder2/folder3/contact-us ----> This fails
在尝试加载资源时,似乎省略了一个文件夹,而不是http://localhost/folder1/folder2/folder3/js/jquery.js
,JS资源的URL被设置为http://localhost/folder1/folder2/js/jquery.js
这里有规则缺少概念吗?如何使两个URL都有效?
答案 0 :(得分:1)
由于你在js / css等中使用相对路径,这种情况正在发生。
要修复此问题,您可以在网页HTML的<{1}}部分下方添加:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char str1[100], str2[100];
printf("enter the first string :");
scanf("%s", &str1);
printf("enter the second string :");
scanf("%s", &str2);
if(strcmp(str1,str2)==0){
printf("the strings are equal\n");
}
else if(strcmp(str1,str2)<0){
printf("string 1 is less than string 2\n");
}
else{
printf("string 1 is greater than string 2\n");
}
return 0;
}
以便从该基本网址解析每个相对网址,而不是从当前网页的网址解析。