私はこの質問がすでに尋ねられていることを知っています、私はそれらすべてを試しましたが、それでもurlからindex.phpを削除することができません。これが私の詳細です
Ubuntu 12.10
PHP : 5.4.6
Mod_rewrite in on
CI verson: 2.1
.htacessは次のようになります。
RewriteEngine On
RewriteBase /projectname
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
私は以下のリンクも見ますが、運はありません。 RL CIベースのサイトからindex.phpを削除できません
codeigniterのパスから「index.php」を削除する方法
「/ etc/Apache2/sites-available/default」は次のようになります。
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</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 None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${Apache_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>
助けてくれてありがとう!!
application/config/config.php
変化する:
$config['index_page'] = 'index.php';
に:
$config['index_page'] = '';
apache構成ファイルを変更するたびに、Apacheのリロードを実行することをお勧めします。
Sudo /etc/init.d/Apache2 reload
または:
Sudo service Apache2 reload
または:
Sudo /etc/init.d/httpd reload
(またはあなたのプラットフォームに相当するコマンドは何でも)
それが価値があるもののために、ここに私の.htaccessがあります
RewriteEngine on
RewriteBase /
RewriteCond $1 !^(index\.php|static|robots\.txt|favicon\.ico|uploads|googlexxxxxxxx\.html|mobile.html)
RewriteRule ^(.*)$ index.php/$1 [L]
ステップ1:
これをhtaccessファイルに追加します
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
</IfModule>
ステップ2:
Codeigniter設定でindex.phpを削除します
$config['base_url'] = '';
$config['index_page'] = '';
ステップ3:
Apache設定でhtaccessの上書きを許可する(コマンド)
Sudo nano /etc/Apache2/Apache2.conf
ファイルを編集して次のように変更します
AllowOverride All
wwwフォルダー用
ステップ4:
Apache mod rewriteを有効化(コマンド)
Sudo a2enmod rewrite
ステップ5:
Apacheを再起動(コマンド)
Sudo /etc/init.d/Apache2 restart
私の.htaccess
RewriteEngine on
RewriteCond $1 !^(index.php)
RewriteRule ^(.*)$ index.php/$1 [L]