我在这里和网上的其他地方经历了很多资源,但似乎无法使其发挥作用。 我在主目录中有codeigniter应用程序。 Sym链接在/ var / www / html中创建。 以下链接正常。
http://mydomain.net/dms/index.php/welcome
但是如果没有index.php,我希望以下链接可以正常工作
http://mydomain.net/dms/welcome
代码点火器2.1.1目录:
dms
application
system
index.php
.htaccess
的config.php
$config['index_page'] = "";
$config['uri_protocol'] = "AUTO";
routes.php文件
$route['default_controller'] = "welcome";
配置文件httpd.conf
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
Alias /dms/ "/var/www/html/dms/"
<Directory "/var/www/html/dms">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
sym links
ls -l /var/www/html
dms -> /home/user1/dms
.htaccess文件:
RewriteEngine On
# enable symbolic links
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+) index.php [L]
我尝试将.htaccess文件保存在CI文件夹文件夹/ home / user1 / dms中,稍后保存在/ var / www / html中 两者都没有用。 我收到错误(在http错误日志中)
"File does not exist: /var/www/html/dms/welcome"
请帮忙。
答案 0 :(得分:0)
我使用这个.htaccess,它适用于我,尝试:
<IfModule mod_rewrite.c>
# Make sure directory listing is disabled
Options +FollowSymLinks -Indexes
# disable the Apache MultiViews directive if it is enabled on the server. It plays havoc with URL rewriting
Options -MultiViews
RewriteEngine on
<IfModule mod_php5.c>
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
<IfModule !mod_php5.c>
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
</IfModule>