我的目录看起来像是
Project
-- dev
-- .htaccess
-- .index.php
-- dist
Gruntfile.js
node_modules
package.json
我正在尝试使用Grunt打开一个持久的PHP服务器,但是我也想使用.htaccess文件,但是Grunt不会识别它。
目前我的PHP文件如下:
php: {
watch: {
css: {
files: ['dev/styles/**/*.scss'],
tasks: ['sass:dev']
},
scripts: {
files: 'dev/scripts/javascript/*.js',
tasks: ['jshint', 'uglify']
}
},
options: {
keepalive: true,
open: true,
base: 'dev',
port: 8000,
router: '.htaccess'
}
}
一旦php服务器打开,就会发生以下错误:
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0
Fatal error: Unknown: Failed opening required '.htaccess' (include_path='.;C:\php\pear') in Unknown on line 0
答案 0 :(得分:0)
尝试将 dot:true
添加到您的选项
options: { dot: true },
在进一步阅读时,我认为路由器文件应该是一个将在服务器启动时运行的文件。如果此脚本返回false,则按原样返回请求的资源。
所以它应该是一个.php文件,尝试用虚拟文件替换.htaccess并查看错误是否消失。
这是一个示例文件
<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
return false; // serve the requested resource as-is
} else {
echo "<p>Thanks for using grunt :)</p>";
}
?>