我有一个JS文件,它有一个指向另一个脚本的路径。如果我不想暴露我的目录结构,最好的方法是什么?
例如,我可以在.htaccess文件中添加重写规则并在JS文件中使用它吗?或者有更好的方法吗?
Current JS file:
URL_PATH = '/incl/pro/dir/files/server.php';
// change to:
URL_PATH = '/dir/server.php';
在DOCUMENT_ROOT位置创建一个.htaccess文件,其中包含以下内容:
Options +FollowSymlinks -MultiViews
RewriteEngine on
RewriteRule ^dir/(.*)$ /incl/pro/dir/files/$1 [L,NC]
重写规则将负责在内部将您的/dir/server.php
请求转发到/incl/pro/dir/files/server.php
。
是的,这将是一个很好的使用.htaccess文件来掩盖文件的实际位置的方法。
你想问的问题让我有点困惑。
js文件是在客户端机器上执行的,而不是在服务器机器上执行。因此,无论你在js脚本上设置什么路径,都不会在客户端机器上执行,除非它们碰巧有确切的路径。
更好的选择是不包含脚本的路径。相反,对该脚本进行ajax调用。你不能相信任何点击.php脚本的东西都来自js文件或是在.中手动输入的
例如,如果您的站点目录位于/includ/site/scripts/yourscript.php,并且在您的js文件中,则可以使用jQuery生成ajax,以获取www.yoursite.com/scripts/yourscripts.php的内容,并解析出您需要的任何内容或执行所需的脚本。