我正在本地开发一个网站/网络应用程序,其中包括许多ajax调用等... 我的问题是每次我必须将app_dev.php包含在网址中 - 所以当我继续生产时,我需要搜索并替换这些网址。
有没有办法通过apache隐藏app_dev.php?我读了很多关于那个的问题,但没有解决方案适合我。
我已经做的是添加这个:
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "C:/wamp/www/web"
DirectoryIndex app_dev.php
ServerName dummy-host.example.com
ServerAlias localhost
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
<Directory "C:/wamp/www/web">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
到我的httpd.conf但它完全被忽略了......
我正在使用WAMP 2.2
答案 0 :(得分:3)
我将web / .htaccess更改为以下内容:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
#<IfModule mod_vhost_alias.c>
# RewriteBase /
#</IfModule>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app_dev.php [QSA,L]
</IfModule>
我在httpd.conf中添加了以下内容:
DocumentRoot "c:/wamp/www/web"
<Directory "c:/wamp/www/web">
到我的httpd-vhosts.conf(C:\ wamp \ bin \ apache \ apache2.4.2 \ conf \ extra):
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "C:/wamp/www/web"
DirectoryIndex app_dev.php
ServerName localhost
ServerAlias localhost
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
<Directory "C:/wamp/www/web">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
答案 1 :(得分:0)
答案 2 :(得分:0)
您似乎正在尝试为Symfony
设置开发环境。
更简单的解决方案是创建虚拟主机并告诉它不要使用.htaccess
,因为.htaccess
文件会导致虚拟主机设置被覆盖。
在.htaccess
或httpd.conf
文件中执行任何操作后,请记住httpd-vhosts.conf
。
用于开发的虚拟主机mysite.dev
<VirtualHost *:80>
ServerName mysite.dev
ServerAlias www.mysite.dev
DocumentRoot e:/testing/mysite/web
<Directory "e:/testing/mysite/web/">
// disable the .htaccess in the web folder
// from undoing the attempt to go straight to app_dev.php
AllowOverride None
Require local
// this forces app_dev.php to be run
<IfModule rewrite_module>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app_dev.php [QSA,L]
</IfModule>
</Directory>
ErrorLog "D:/wamp/logs/mysite.dev.apache.error.log"
CustomLog "D:/wamp/logs/mysite.dev.apache.access.log" combined
php_value error_log "D:/wamp/logs/mysite.dev.php.error.log"
</VirtualHost>
用于在PROD环境中进行测试的虚拟主机
<VirtualHost *:80>
ServerName mysite.dev
ServerAlias www.mysite.dev
DocumentRoot e:/testing/mysite/web
<Directory "e:/testing/mysite/web/">
AllowOverride All
Require local
</Directory>
ErrorLog "D:/wamp/logs/mysite.prod.apache.error.log"
CustomLog "D:/wamp/logs/mysite.prod.apache.access.log" combined
php_value error_log "D:/wamp/logs/mysite.prod.php.error.log"
</VirtualHost>
现在您可以保留.htaccess
文件,因为当您将此站点移动到实时服务器时,它可能非常相关。
您也无需修改默认httpd.conf
文件中标准WAMPServer默认值中的任何内容。