Respect Vite's `root` config field
Opened this issue · 4 comments
I'm having trouble getting vite-plugin-php
to work with my Vite setup (version 5.1.4). Despite following the plugin's documentation and configuring my vite.config.js
as shown below, it doesn't seem to function as expected. My project structure is straightforward with a single index.php
file in the src
directory, and I've directed the plugin to use a specific PHP binary.
Here's my vite.config.js
:
import path from "path";
import { defineConfig } from "vite";
import usePHP from "vite-plugin-php";
export default defineConfig({
plugins: [
usePHP({
binary: "/opt/homebrew/bin/php",
entry: ["index.php"],
}),
],
root: path.resolve(__dirname, "src"),
});
And my project structure:
- src
-- index.php
Could anyone point out what might be wrong with this configuration or suggest any steps to troubleshoot this issue?
Creating a starter repository for this would be highly beneficial! It seems like a fantastic development eliminating the need for workarounds and using wildcards. However, I wasn't able to make it function correctly.
Hi @ipekli,
Vite's root
config is being ignored at the moment by the plugin.
The root is assumed to be the project folder, where the vite.config.js
or vite.config.ts
is.
In order to load the index.php
from your src
folder, the config should be as follows:
import path from "path";
import { defineConfig } from "vite";
import usePHP from "vite-plugin-php";
export default defineConfig({
plugins: [
usePHP({
binary: "/opt/homebrew/bin/php",
entry: ["src/index.php"],
}),
],
root: path.resolve(__dirname, "src"),
});
Keep in mind, that you will have /src/
prefix in the URL.
Regarding the root
configuration: I will implement that properly, hopefully in the near future.
Why has this issue been closed? It does seem as this is still an issue.
I guess due to the created starter repository ;)