Ubuntu 14.04(Apache 2.4.7)でhtaccessファイルの使用を有効にしようとしています。この質問には多くの重複がある可能性があることは知っていますが、まだ助けてくれませんでした。
ErrorDocument 404 /404.html
<VirtualHost *:80>
AccessFileName .htaccess
ServerAdmin webmaster@localhost
DocumentRoot /var/www
ErrorLog ${Apache_LOG_DIR}/error.log
CustomLog ${Apache_LOG_DIR}/access.log combined
<Directory /var/www/>
Options Indexes FollowSymLinks Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
他に何が必要ですか?
ファイルを開く
Sudo vim /etc/Apache2/Apache2.conf
この行の前にコメント記号(#)がある場合は削除します(約187行目)。
AccessFileName .htaccess
次に、ある行を見つけます
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
「なし」を「すべて」に置き換えます
AllowOverride All
そして出来上がり... .htaccess
動作します!!
ModRewriteをアクティブにします。
Sudo a2enmod rewrite
Sudo /etc/init.d/Apache2 restart
私の場合、/ etc/Apache2/sites-enabled/000-default.confのAllowOverride None
からAllowOverride All
への変更が役立ちました。
他のすべての。confファイルにはすでにAllowOverride All
が含まれています。
#
からコメント記号(AccessFileName .htaccess
)を削除Apache構成ファイルの名前は標準ではありません。 Windowsではdefault.confに、Linuxではdefaultに名前を変更できます。 LinuxベースのOSでは、ターミナルで次のコードを実行します。
Sudo cp /etc/Apache2/sites-available/000-default.conf /etc/Apache2/sites-available/default