我已将我的项目symfony2部署在个人服务器上,一切正常。
现在我想为一些朋友发布这个项目,以便他们可以看到它。我认为最好的方法是通过/从外部访问我的项目。 快速谷歌研究认为,使用Alias声明可以做到这一点。
ServerName blabla
ServerAlias blablab
ServerAdmin blablab@blabla
DocumentRoot /path/to/my/project/web
Alias /myproject "/path/to/my/project/web"
<Directory /path/to/my/project/web>
DirectoryIndex app.php
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
Order allow,deny
allow from all
</Directory>
当我尝试访问<server_IP_ADDRESS>/<project_name>
时出现Not found
错误
为什么会出现这个错误?我该如何解决这个问题?
UPDATE1
我在一台服务器上有很多项目,我希望能够在任何地方访问它们。从我的观点来看,最好的选择是使用别名:
http://<my_server_ip_address>/project1
http://<my_server_ip_address>/project2
http://<my_server_ip_address>/project3
.... 答案 0 :(得分:1)
拥有虚拟服务器会将服务器映射到主机名/别名。在您的情况下,您正在访问相同的主机名(服务器IP)但不同的URI。在您的情况下,这些URI可能不存在,因此您需要重定向/重写它们。我认为你会想要重写,所以你可以继续把重写规则放在虚拟主机定义中,就像在.htaccess
中一样,只要确保你启用了mod_rewrite。
ServerName <server ip>
RewriteEngine On
RewriteRule /project1 /Path/to/project/1 [L]
RewriteRule /project2 /Path/to/project/2 [L]
RewriteRule /project3 /Path/to/project/3 [L]