在服务器(本地和现场)中托管laravel项目时的问题

时间:2017-01-12 04:37:40

标签: php .htaccess laravel server hosting

我想在专用服务器(aws,ubuntu 14.04)中托管一个laravel项目。

所以我把项目放在/var/www/html。当我转到11.111.11.111/projectFolder/public时,会显示默认欢迎页面,

但是当我转移到11.111.11.111/projectFolder/public/login时,我收到错误 - 找不到页面,有趣的是11.111.11.111/projectFolder/public/index.php/login,登录页面显示但缺少样式和jss文件。

Failed to load resource: the server responded with a status of 404 (Not Found) http://11.111.11.111/js/app.js Failed to load resource: the server responded with a status of 404 (Not Found)

所有这些cssjs文件都存在于laravel app的public文件夹中。

当我使用php artisan serve

运行项目时,这些工作非常有效

.htaccess文件如下,

<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
    Options -MultiViews
</IfModule>

RewriteEngine On

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

我只想更改.htaccess文件,因此当我键入11.111.11.111时,应用程序显示正常运行时。

1 个答案:

答案 0 :(得分:1)

如果您希望直接使用http://11.111.11.111查看项目,则必须更改DocumentRoot文件中的httpd.conf设置。

/etc/apache2/sites-available/000-default.conf文件中,将目录根目录更改为:

DocumentRoot /var/www/html/projectFolder/public