Fedora 13でLAMPサーバーを実行していますが、正常に動作しています。ただし、「。htaccess」ファイルを現在のサイトのdocrootフォルダーに追加しただけで、完全に無視されています。
私はこれを含む半ダースの異なるテストを試しました:
RewriteEngine on
RewriteBase /
RewriteRule ^.*$ index.php
しかし、画像と他のすべてのページは正常にロードされ、存在しないファイルはまだ404です。私もこれを試しました:
order deny,allow
deny from all
しかし、すべてのページはまだ正常にロードされます。この場合も、.htaccessファイルは100%無視されます。
仮想ホストレコードを/etc/httpd/conf.d/virtual.confに配置します。次のようになります。
NameVirtualHost *
<VirtualHost *>
ServerName intranet
DocumentRoot /var/www/default
<Directory "/var/www/default">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *>
ServerName ourwebsite.com
DocumentRoot /var/www/html/ourwebsite.com/docroot
<Directory "/var/www/html/ourwebsite.com/docroot">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
サーバーが.htaccess
ファイルを完全に無視する原因は何ですか?
編集:
.htaccessファイルを上記に変更して、私の変更が無視されていることをより明確に示しました。実稼働サーバーでまったく同じ.htaccessファイルを試したところ、正常に機能したことに注意してください。
編集2:
OK、新しい情報があります!テストのためだけに、すべての "AllowOverride"ディレクティブを一時的にに変更しましたAllowOverride All
。最初のDirectoryエントリが他のすべてのエントリを圧倒しているように見えることがわかりました。
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
これをに変更するとAllowOverride All
、.htaccessファイルが有効になります。AllowOverride All
私の設定ファイルの他のすべてのディレクティブが無視されているようです!
何が?