我想要以下结构:
|--- public_html
|--- dist
| |--- index.html
| |--- style.css
| |--- script.js
| |--- blog
| | |--- index.html
|--- index.php
|--- .htaccess
要让apache首先查看/dist/
以查看是否匹配,那么如果不使用/index.php
。如何通过.htaccess获取apache?
但我不希望它只是重定向,而是为了提供/dist/
文件,就像它们在Web根目录中一样,所以:
example.com/blog
是这样提供的,但是使用example.com/dist/blog/index.html
中的文件。
我已经对文档有了很好的了解,但我对在apache中看似无数的重定向和映射方式感到困惑。我会用哪个模块来做这个?
答案 0 :(得分:0)
将此代码放入DOCUMENT_ROOT/.htaccess
文件中:
RewriteEngine On
# if path available in /dist/ then use it
RewriteCond %{DOCUMENT_ROOT}/dist/$1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/dist/$1 -d
RewriteRule ^(.+?)/?$ /dist/$1 [L]
# otherwise forward to /index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]