以下是CakePHP使用的htaccess代码: -
我想重写它们/转换它们以便它们在我的openlitespeed服务器上运行。它们在标准的apache服务器上运行得非常好。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
答案 0 :(得分:0)
只需在所需虚拟主机的上下文中添加重写规则即可。
添加虚拟主机的静态上下文
上下文参数:
- URl = /
- 位置 =默认路径,例如/usr/local/lsws/Example/html/
- 无障碍 = Yes
- 启用重写 = Yes
- 重写规则 =
RewriteRule ^(.*)$ app/webroot/ [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
您仍然可以将所有原始规则重写。
我只提出一条规则RewriteRule ^(.*)$ app/webroot/ [L]
,因为我不明白为什么需要其他规则。似乎永远不会匹配webroot/
和webroot/$1
。
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]