嗨,我一直在努力在 htaccess 上执行以下操作,但它似乎不起作用。
有人可以帮我吗?
AddType application/x-httpd-php .js
我尝试了 php4,php5 版本的所有我可以在谷歌上找到的东西,但我没有运气。
我错过了什么?
在我的 file.js
以下是...
<?php
$(document).ready();//jquery/javascript
?>
我预计会出现 php 致命错误,但我将上述内容完全视为纯文本。
嗨,我一直在努力在 htaccess 上执行以下操作,但它似乎不起作用。
有人可以帮我吗?
AddType application/x-httpd-php .js
我尝试了 php4,php5 版本的所有我可以在谷歌上找到的东西,但我没有运气。
我错过了什么?
在我的 file.js
以下是...
<?php
$(document).ready();//jquery/javascript
?>
我预计会出现 php 致命错误,但我将上述内容完全视为纯文本。
如果您只想使用 .htaccess 配置来执行此操作(谁想在每个PHP 文件中设置标头?):
<FilesMatch "\.css$">
SetHandler application/x-httpd-php
Header set Content-type "text/css"
</FilesMatch>
<FilesMatch "\.js$">
SetHandler application/x-httpd-php
Header set Content-type "application/javascript"
</FilesMatch>
尝试:
<FilesMatch "\.(js)$">
AddHandler application/x-httpd-php .js
</FilesMatch>
如果我是正确的,您的 PHP JS 文件必须带有内容类型的标头:application/x-javascript,否则它不会被解释为 JS。
Header("content-type: application/x-javascript");
如果您试图让 PHP 在 Javascript 文件中工作,您可以简单地将 Javascript 重命名为javascript_file.js.php
并让 PHP 在其中工作。
将其包含到您的页面中不会有任何问题。
`
一种可能性是您未配置为允许使用 .htaccess 文件。
你可以在你的 httpd.conf 中检查这个。
您要确保将AllowOverride
其设置为All
例如
从
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Satisfy all
</Directory>
到
<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
Satisfy all
</Directory>
我对 .htaccess 了解不多,但我相信解决问题的部分方法是将 jQuery 移到 php 标签之外,如下所示:
<?php
?>
</script>
$(document).ready();
<script>
您的文件将被解析为任何其他 php 文件,因此您的 javascript 将在 javascript 标签内正常执行。
如果您想在 javascript 中包含 php 变量,请执行以下操作:
<?php
$time=time();
?>
<script>
$( document ).ready(function(){
$("SPAN").text("<? echo $time; ?>");
});
</script>
<SPAN></SPAN>
上面的代码将返回 SPAN 元素内的当前纪元时间戳