我在.htaccess
文件夹中找到了一个/htdocs/wordpress/
文件。
URL www.example.com
指向/htdocs
目录。
Wordpress由www.example.com/wordpress
这是.htaccess
的内容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
我在https://stackoverflow.com/a/27913187/2311074中发现
像这样使用RewriteBase ...
RewriteBase /folder/ RewriteRule a\.html b.html
与...基本上相同...
RewriteRule a\.html /folder/b.html
但是,当.htaccess文件位于/ folder /内时,这也指向同一目标:
RewriteRule a\.html b.html
所以我猜它不需要了吗?此外,我看不到
RewriteRule ^index\.php$ - [L]
在做。重定向到哪里?无论如何,所有内容最终都会重定向到
RewriteRule . /wordpress/index.php [L]
所以无论如何都要重写第一个RewriteRule,对吧?
上面的.htaccess
文件是否与此等效:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
答案 0 :(得分:0)
如果我正确的话,此规则会阻止直接访问index.php,那么当用户尝试直接访问index.php时,“-”将执行403禁止访问。
RewriteRule ^index\.php$ - [L]