私はCodeIgniterを使用しており、Ubuntu 10.10クラウドサーバにLAMPスタックをインストールしました。allowoverrideが有効になっていても.htaccessが機能しない
すべてがうまくいっていて、私のホームディレクトリが/home/myapp/public_html
になるようにApache userdirモジュールが有効になっていて、servername/~myapp
にアクセスしてアクセスします。
不幸にも、.htaccess
書き換えが動作していないように見える - それはthe file /home/myapp/public_html/index.php
が見つかりませんでした404を引き起こします - 404エラー。
Mod_rewriteが有効です。
AllowOverride All
ディレクティブを設定する必要があることを認識しています。/etc/apache2/sites-enabled/default
に設定しましたが、書き換えは正しく動作していないようです。
マイ.htaccess
ファイルは、単純に含まれています:
RewriteEngine on
RewriteCond $1 !^(index.php|img|stylesheets|js|icons|robots\.txt|user_guide)
RewriteRule ^(.*)$ index.php/$1 [L]
そして、私の/etc/apache2/sites-available/default
は、次のようになります。
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride ALL
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride ALL
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
そして最後に、/etc/apache2/mods-enabled/userdir.conf
は次のようになります。
<IfModule mod_userdir.c>
UserDir public_html
UserDir disabled root
<Directory /home/*/public_html>
AllowOverride All
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
</IfModule>
私はグーグルでてきたし、誰かが助けてくれますか?
これも同じ問題を抱えてのUbuntu 10.10でlaravelを使用して....私のために働いたが... – ftrotter
この問題は、それは!!働いた、喜んで我々はstackoverflowのようなものを持って、UBU 12.04LTSにあまりにも私のために来ました! – Mazzy
私は助けてうれしいです:) – jonas