Apache 虚拟主机中无域的Laravel访问api
我有一个laravel应用程序,当我的虚拟主机设置如下时,该应用程序已全部设置并工作:Apache 虚拟主机中无域的Laravel访问api,apache,laravel,virtualhost,Apache,Laravel,Virtualhost,我有一个laravel应用程序,当我的虚拟主机设置如下时,该应用程序已全部设置并工作: ServerName mylaravelproj.com <Directory /var/www/mylaravelproj/public> ..rules here ServerName mylaravelproj.com …这里的规则 所以我需要做的就是访问mylaravelproj.com/api/whateverRouteHere 但是,如果没有域名,我不知道如何访问api Doc
ServerName mylaravelproj.com
<Directory /var/www/mylaravelproj/public>
..rules here
ServerName mylaravelproj.com
…这里的规则
所以我需要做的就是访问mylaravelproj.com/api/whateverRouteHere
但是,如果没有域名,我不知道如何访问api
DocumentRoot /var/www/mylaravelproj/public
<Directory /var/www/mylaravelproj/public>
..rules here
DocumentRoot/var/www/mylaravelproj/public
…这里的规则
访问192.168.xxx.xxx/mylaravelproj/public/api/whateverRouteHere时不起作用
我对配置apache还很陌生,对为什么这样做不起作用有点困惑。如果您的服务器正在侦听域
mylaravelproj.com
,那么您为什么不向主机
文件添加一个条目,如下所示:
192.168.xxx.xxx mylaravelproj.com
然后刷新你的DNS缓存,然后访问,你应该能够访问你的应用程序
在windows上,我通常是这样设置laravel应用程序的。我使用XAMPP,因此我将以下条目添加到:C:\XAMPP\apache\conf\extra\httpd vhosts.conf
<VirtualHost *:80>
ServerName mylaravelproj.com
DocumentRoot "C:/xampp/htdocs/mylaravelproj/public"
</VirtualHost>
然后在命令提示符下,使用ipconfig/flushdns
192.168.1.122 mylaravelproj.com
注意*使用完整域运行dev env不是一个好主意,如果您的服务器正在侦听域
mylaravelproj.com
,那么您为什么不向主机
文件添加如下条目:
192.168.xxx.xxx mylaravelproj.com
然后刷新你的DNS缓存,然后访问,你应该能够访问你的应用程序
在windows上,我通常是这样设置laravel应用程序的。我使用XAMPP,因此我将以下条目添加到:C:\XAMPP\apache\conf\extra\httpd vhosts.conf
<VirtualHost *:80>
ServerName mylaravelproj.com
DocumentRoot "C:/xampp/htdocs/mylaravelproj/public"
</VirtualHost>
然后在命令提示符下,使用ipconfig/flushdns
192.168.1.122 mylaravelproj.com
注意*使用完整域运行dev env不是一个好主意,您应该使用类似mylaravelproj.dev或mylaravelproj.local的工具我无法向主机添加内容,因为我试图通过移动设备访问它,并访问其中的每一个设备,篡改主机文件将非常繁琐:/。我在一个本地网络上提供服务,我想知道如果没有域名,它是否可以实现,那么你需要研究动态DNS(例如),或者给自己买一个便宜的5美元的DigitalOcean VPS并在线部署你的应用程序。因此,本质上,除了通过外部主机/主机fliles或dyn DNS之外,没有其他方法可以做到这一点:/。我只是想知道为什么mylaravelproj.com/api/whateverRouteHere可以工作,而192.168.xxx.xxx/mylaravelproj/public/api/whateverRouteHere不能。我的意思是,第一个解析为几乎相同的url。。对吗?你有什么错误吗?您可以尝试这样做:然后您可以像这样访问您的应用程序api端点:
192.168.xxx.xxx/api/whateverRouteHere
即使我将000默认值设置为项目的根目录,也无法找到404页面。在这种情况下,将提供公共Laravel页面,但api不起作用。工作时不起作用这可能是拉威尔特有的事情,但我就是不明白为什么一个工作,另一个不工作,因为它们在理论上似乎是一样的。值得注意的是,在laravel公用文件夹中找到的“普通”和“显示”页面与预期的页面相同,因此它必须是一个实现细节…我无法向主机添加内容,因为我尝试通过移动设备访问它,并访问其中的每一个设备,篡改主机文件将非常繁琐:/。我在一个本地网络上提供服务,我想知道如果没有域名,它是否可以实现,那么你需要研究动态DNS(例如),或者给自己买一个便宜的5美元的DigitalOcean VPS并在线部署你的应用程序。因此,本质上,除了通过外部主机/主机fliles或dyn DNS之外,没有其他方法可以做到这一点:/。我只是想知道为什么mylaravelproj.com/api/whateverRouteHere可以工作,而192.168.xxx.xxx/mylaravelproj/public/api/whateverRouteHere不能。我的意思是,第一个解析为几乎相同的url。。对吗?你有什么错误吗?您可以尝试这样做:然后您可以像这样访问您的应用程序api端点:192.168.xxx.xxx/api/whateverRouteHere
即使我将000默认值设置为项目的根目录,也无法找到404页面。在这种情况下,将提供公共Laravel页面,但api不起作用。工作时不起作用这可能是拉威尔特有的事情,但我就是不明白为什么一个工作,另一个不工作,因为它们在理论上似乎是一样的。值得注意的是,普通和显示在laravel公用文件夹中找到的页面与预期相同,因此它必须是一个实现细节。。。