我已经看到了人们所拥有的100个不同的mod_rewrite和.htaccess问题,但到目前为止,我还没有找到解决问题的方法。
我设置了一台运行10.8.2的新计算机macbook pro。这不是使用MAMPP或类似的东西,只是Apache的本机安装。一切似乎很好,看起来与我的其他机器相同,但据我所知,url重写不会发生。
我已经检查过重写模块已经加载......而且,我已经添加了允许所有这些内容到我的各种.conf文件中,但没有任何工作。我对下一步甚至尝试的内容都失去了看法。
我不知道这是否重要,但我已启用VirtualHosts,如果您将/index.php/放入网址,我正在处理的网站确实会加载。
我发布任何人都需要查看的代码,让我知道你需要什么。
这里是.htaccess文件(适用于其他机器)
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
我的虚拟主机
NameVirtualHost *:80
ServerRoot "/Users/admin/Sites/dir"
<VirtualHost *:80>
DocumentRoot mysite/awareness-thing
ServerName awareness.test.dev
</VirtualHost>
编辑:这是我的httpd.conf文件的要点:https://gist.github.com/JoeCianflone/f580f7dd75d7e10f05a0
答案 0 :(得分:0)
似乎有两个问题在继续:
我将.htaccess文件更改为:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index\.php$
RewriteRule ^.*$ index.php [NC,L]
我将我的vhost.conf更改为:
NameVirtualHost *:80
ServerRoot "/Users/admin/Sites/site"
<Directory "/Users/admin/Sites/site">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
DocumentRoot 2403_awareness-campaign
ServerName test.awareness-campaign.dev
</VirtualHost>
只是一个问题的组合,这使我成为一个大型的WTF时刻。