php:Mod rewrite让我很难找到基址。。需要帮助吗

php:Mod rewrite让我很难找到基址。。需要帮助吗,php,javascript,mod-rewrite,base-address,Php,Javascript,Mod Rewrite,Base Address,我对Mod_重写还不熟悉,但问题是它破坏了我所有的ajax和php 我使用windows.location对象获取javascript的当前位置示例: var str = location.pathname; str=str.slice(0,str.lastIndexOf('/')); 问题是,自从我使用mod_rewrite以来,这个方法就一直不起作用。 我的.htaccess Options +FollowSymLinks RewriteEngine on RewriteRule ^car

我对Mod_重写还不熟悉,但问题是它破坏了我所有的ajax和php

我使用windows.location对象获取javascript的当前位置示例:

var str = location.pathname;
str=str.slice(0,str.lastIndexOf('/'));
问题是,自从我使用mod_rewrite以来,这个方法就一直不起作用。 我的.htaccess

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^cars/([^/]+)/?$ profiles.php?carname=$1 [L]
有人能告诉我解决这个问题的方法吗? 另外,我在装载所有img和css/.js时也面临同样的问题,但我听说我可以在.htaccess上编写条件,只能重定向到redirect.php


我需要一种为ajax调用找到基址的方法,以及另一种为php找到基址的方法。

问题是,您正在将所有url重定向到一个php文件,它会破坏所有其他资产,包括css和js

解决方案:

使用重写条件。这样,它只在文件或目录不存在时重定向

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^cars/([^/]+)/?$ profiles.php?carname=$1 [L]
第一行是:如果文件不存在 第二个是:如果目录不存在 将有一个重定向