15

CodeIgniter を使用しており、LAMP スタックを Ubuntu 10.10 クラウド サーバーにインストールしました。

すべてがうまく機能しており、ホーム ディレクトリが にあるように Apache userdir モジュールを有効にしてい/home/myapp/public_htmlますservername/~myapp

残念ながら、.htaccess書き換えが機能していないようです - 404 と言ってthe file /home/myapp/public_html/index.php見つかりません - 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 dan@danmatthews.me

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>

私は何時間もグーグルをいじっていましたが、誰か助けてもらえますか?

4

1 に答える 1

25

価値があるのは、Ubuntu Server 11.10 と LAMP で非常によく似た問題が発生したことです。コマンドを実行する必要がありました

sudo a2enmod rewrite

それは私のためにトリックをしました。多分それはあなたやここに来る他の人々のための解決策です.

于 2011-12-21T09:13:39.737 に答える