私の問題は、ローカルサーバーの.htaccess
ファイルが読み込まれないということです。 VirtualHost
ファイルの設定が常に優先されるようです。Apache VirtualHostで動作する.htaccessファイルを取得する方法
私は次のことを試してみました:
mod_rewrite
- を有効に
All
にAllowOverride
を変更したが、これはHTTP Error 500 Internal server error
が発生します。私は様々なオプションで試してみましたが、常に500エラーが発生します。
私は次のように見えるのUbuntu上のVirtualHostファイルを使用しています:私は(読まれていない)、以下の規則があり/web/website
の下で私の.htaccess
ファイルで
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /web/website
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /web/website>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
を:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [L]
RewriteCond %{HTTP_USER_AGENT} ^facebookexternalhit
RewriteRule ^(.*)$ ogtags.php?$1 [L,QSA]
ErrorDocument 404 /404
ErrorDocument 401 /401
これらのルールをVirtualHostファイルに直接追加していましたが、私の.htaccess
ファイルを動作させたいと思います!それはそのような大きな質問ですか? :(
編集:だから、私はapacheのerror.log
に見て、それがInvalid command 'Action', perhaps misspelled or defined by a module not included in the server configuration
が私.htaccess
ファイルを参照すると言う私は有効にすることができますアクションと呼ばれるモジュールがあるように思われない任意のアイデア
。。? 編集2:私は私のhttpd.conf
ファイルが空であることに気づいた私はVirtualHost
ファイルを使用していますので、この問題を万一
ダウン誰かを助け
希望は私はそれらのルールをコメントアウトしようとしているが、彼らが問題を引き起こしていたようには見えません。その他の提案はありますか?私はあなたが正しいと思う、それは間違っているこれらのルールの一つでなければならない。私もすべてのルールをコメントアウトしてみましたが、やはり効果がありませんでした!だから私は他に何をしようとするのか分からない! –
しかし、これらのルールは404を含むライブサーバーで問題なく動作します。だから私のローカルのApacheの設定に間違っている何かがあるはずです。 –
'' httpd.conf''はユーザー設定を追加するためのもので、 '' apache2.conf''ファイルに含まれています。デフォルトでは空白です。 – cyberhicham